LeetCode 每日一题 1128. 等价多米诺骨牌对的数量
作者:互联网
分析
用一个map存贮相同的多米诺牌的数量,之后用排列组合公式求和即可。
C++ 代码
class Solution {
public:
map<vector<int>,int> mp;
int ans;
int numEquivDominoPairs(vector<vector<int>>& dominoes) {
if(dominoes.size()<1) return 0;
for(auto pir:dominoes)
{
if(pir[0]>pir[1])
{
swap(pir[0],pir[1]);
}
mp[pir]++;
}
map<vector<int>,int>::iterator it=mp.begin(); //迭代器遍历整个mp
while(it!=mp.end())
{
int p=it->second;
ans+=(p*(p-1))>>1;
it++;
}
return ans;
}
};
标签:1128,map,多米诺骨牌,int,++,mp,ans,pir,LeetCode 来源: https://blog.csdn.net/Jay_fearless/article/details/113176329