LeetCode 1128.等价多米诺骨牌对的数量

难度:简单。
这个题的意思怪怪的,不太理解为什么要这样,不过做起来是很简单。
用一个二维数组来存储这些数字。

正确解法:

class Solution {
    
    
public:
    int numEquivDominoPairs(vector<vector<int>>& dominoes) {
    
    
        int n = dominoes.size();
        if(n <= 1)return 0;
        int nums[10][10] = {
    
    0};
        int k = 0;
        for(int i = 0; i < n; i++){
    
    
            int a = dominoes[i][0], b = dominoes[i][1];
            if(a > b){
    
    
                swap(a, b);
            }
            nums[a - 1][b - 1]++; 
        }

        for(int i = 0; i < 10; i++){
    
    
            for(int j = 0; j < 10; j++){
    
    
                if(nums[i][j] > 1){
    
    
                    k += nums[i][j] * (nums[i][j] - 1) / 2;
                }
            }
        }

        return k;
    }
};

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/almost_afei/article/details/113177402