# UVa 340 - Master-Mind Hints --- # 題目大意 其實就是$1A1B$,有多筆詢問,每次輸入$n$代表有$n$個數字,每個數字皆為$1到9$。接下來是多行數字,對每行輸出是幾$A$幾$B$。 --- # 題解 直接模擬數就好了。輸出格式要注意,前面要空$4$格。 --- ```=C++ #include <bits/stdc++.h> #define ll long long #define pb push_back #define INF 2147483647 #define ft first #define sec second #define pr pair<int,int> #define ISCC ios::sync_with_stdio(0);cin.tie(0);cout.tie(0); using namespace std; int t=1 ,n ,h ,m ,a[1005] ,gs[1005] ,cnt_a[15]; int main() { //ISCC; while(cin >> n && n) { printf("Game %d:\n",t++); set<int> st; memset(cnt_a,0,sizeof(cnt_a)); for(int i=0 ;i<n ;i++) { cin >> a[i]; cnt_a[a[i]]++; st.insert(a[i]); } while(cin >> gs[0]) { for(int i=1 ;i<n ;i++) cin >> gs[i]; if(!gs[0]) break; int A=0 ,B=0 ,cnt[15]={0}; for(int i=0 ;i<n ;i++) if(a[i]==gs[i]) A++ ,cnt[a[i]]++; for(int i=0 ;i<n ;i++) if(a[i]!=gs[i] && st.find(gs[i])!=st.end() && cnt[gs[i]]<cnt_a[gs[i]]) { B++; cnt[gs[i]]++; } printf(" (%d,%d)\n",A,B); } } } ```