Number of Equivalent Domino Pairs

找到有多少对pair, (i, j) == (a,b) where i ==a && j == b or i == b && j == a. 就是做个hash就可以, 两个数都是十以内的, 所以可以先sort一下, 然后变成string. 然后就找到多少个相同的元素. 然后求组合.

class Solution {
    public int numEquivDominoPairs(int[][] dominoes) {
        Map<String, Integer> m = new HashMap<String, Integer>();
        for(int[] d : dominoes) {
            m.put(hash(d), m.getOrDefault(hash(d),0) + 1);
        }
        int count = 0;
        for(int v : m.values()) {
            count += (v * (v -1)) / 2;
        }
        return count;
    }
    
    private String hash(int[] d) {
        Arrays.sort(d);
        return Arrays.toString(d);
    }
}