也是参考了别人的做法。
两个大小为10的数组。
相同位置相同则直接将bull+1;
否则把数字存入数组。
然后把每个位置较小的数累加到cow里面即可。
string getHint(string secret, string guess) {
int bullNum = 0;
int cowNum = 0;
vector<int> bullArray(10,0);
vector<int> cowArray(10,0);
for(int i = 0;i<secret.size();i++){
if(secret[i]==guess[i]){
bullNum++;
} else {
bullArray[secret[i] - '0']++;
cowArray[guess[i] - '0']++;
}
}
for(int i = 0;i<10;i++){
cowNum += min(bullArray[i],cowArray[i]);
}
return to_string(bullNum) + 'A' + to_string(cowNum) + 'B';
}