题目链接:https://leetcode-cn.com/problems/master-mind-lcci/
题目如下:
class Solution {
public:
vector<int> masterMind(string solution, string guess) {
int m=solution.size();
int hit=0,fakehit=0;
unordered_set<int> hited;
for(int i=0;i<m;i++){
if(solution[i]==guess[i]){//找到相同的,就放入,同时记录命中位置
hit++;
hited.insert(i);
}
}
unordered_map<char,int> umap;
for(int i=0;i<m;i++){//将未命中的solution中的字符放入
if(hited.count(i)==0) {umap[solution[i]]++;}
}
for(int i=0;i<m;i++){
if(umap[guess[i]]!=0&&hited.count(i)==0){
umap[guess[i]]--;
fakehit++;
}
}
return {hit,fakehit};
}
};