您的答案為: 1A3B 正確答案為: 1A2B
#include<iostream>
using namespace std;
int main(){
int a[4]={0};
while(cin>>a[0]>>a[1]>>a[2]>>a[3]){
int t,i=0,j=0,k=0;
cin>>t;
int b[t][4];
int aa=0,bb=0;
for(i=0;i<t;i++){
aa=0,bb=0;
cin>>b[i][0]>>b[i][1]>>b[i][2]>>b[i][3];
bool bl[4];
for(j=0;j<4;j++)bl[j]=0;
for(j=0;j<4;j++){
if(a[j] == b[i][j])aa++,bl[j]=1;
}
for(k=0;k<4;k++){
for(j=0;j<4;j++){
if(bl[j] != 1){
if(b[i][k] == a[j]){
bb++;
bl[j] =1;
break;
}
}
}
}
cout<<aa<<"A"<<bb<<"B"<<endl;
}
}
}
想請問我哪裡有問題?@@
測了一下你的 code 發現
1 2 3 5 1 1 1 2 4 1A1B
和
1 1 2 4 1 1 2 3 5 1A2B
結果不一樣,都應該要是 1A1B
才對。
我想會是標記的問題(bl[]
),其中