Number of Equivalent Domino Pairs
Given a list of dominoes
, dominoes[i] = [a, b]
is equivalent to dominoes[j] = [c, d]
if and only if either (a==c
and b==d
), or (a==d
and b==c
) - that is, one domino can be rotated to be equal to another domino.
Return the number of pairs (i, j)
for which 0 <= i < j < dominoes.length
, and dominoes[i]
is equivalent to dominoes[j]
.
Example 1:
Input: dominoes = [[1,2],[2,1],[3,4],[5,6]]
Output: 1
Constraints:
1 <= dominoes.length <= 40000
1 <= dominoes[i][j] <= 9
def numEquivDominoPairs(self, dominoes: List[List[int]]) -> int:
mp = {}
count = 0
for i in range(0, len(dominoes)):
add = dominoes[i][0] + dominoes[i][1]
sub = abs(dominoes[i][0] - dominoes[i][1])
s = str(add) + "," + str(sub)
if (s in mp):
count = count + 1 + mp[s]
mp[s] += 1
else:
mp[s] = 0
return count
Last updated
Was this helpful?