luoheng
12/24/2019 - 11:52 AM

numEquivDominoPairs

func numEquivDominoPairs(dominoes [][]int) int {
    res := map[int]int{}
    for i := 0; i < len(dominoes); i++ {
        r := 1
        r |= 1 << dominoes[i][0]
        r |= 1 << dominoes[i][1]
        res[r]++
    }
    sum := 0
    for _, value := range res {
        sum += (value - 1) * value / 2
    }
    return sum
}