以下是我的程式碼:
#include<iostream>
#include <string.h>
#include <math.h>
using namespace std;
int main()
{
int array[4],array_2[4],counter,adder;//陣列
int idx = 1;
bool flag[4];
bool flag2[4];
int size;//測試array數量
for(int i=0;i<4;i++)
cin >> array[i];
cin >> size;
while(size--)
{
memset(array_2,0,4);
counter = 0;
adder = 0;
for(int i=0;i<4;i++)
{
cin >> array_2[i];
flag[i] = true;
flag2[i] = true;
}
for(int i=0;i<4;i++)
{
if(array[i]==array_2[i])
{
counter++;
flag[i] = false;
flag2[i] = false;
}
}
for(int i=0;i<4;i++)
{
for(int j=0;j<4;j++)
{
if(i!=j)
{
if(array[i]==array_2[j]&&flag[i]&&flag2[j])
{
adder++;
flag[i] = false;
flag2[j] = false;
}
}
}
}
cout<<counter<<'A'<<adder<<'B'<<'\n';
idx++;
}
}
為何會造成結果短缺,請各路大神們幫忙解惑