外管局網(wǎng)站做延期收匯報(bào)告推廣排名seo
解題思路
如果卡片上正面和背面的數(shù)字相同,都為x,那么x一定不符合要求,將這些數(shù)都記錄到哈希表hash中。剩下的卡片正反面數(shù)字不相同,那么不在hash中的數(shù)字中的最小數(shù)min一定是答案。因?yàn)槿鬽in跟現(xiàn)在front數(shù)組中的某些數(shù)相同(這個(gè)數(shù)不會(huì)是hash中的數(shù)),則將那些個(gè)相同的卡片正反面兌換(這些卡片一定正反面數(shù)據(jù)不同),就可以實(shí)現(xiàn)min與front數(shù)組中的所有數(shù)都不相同。
示例代碼
class Solution {
public:int flipgame(vector<int>& fronts, vector<int>& backs) {unordered_map<int,int> hash;for(int i=0;i<fronts.size();i++){if(fronts[i]==backs[i]){hash.insert({fronts[i],fronts[i]});}}int min=2001;for(int i=0;i<fronts.size();i++){if(hash.find(fronts[i])==hash.end()&&fronts[i]<min){min=fronts[i];}if(hash.find(backs[i])==hash.end()&&backs[i]<min){min=backs[i];}}if(min==2001){return 0;}return min;}
};