Python中的等效Domino对数量
假设我们有一个多米诺骨牌列表。每个多米诺骨牌都有两个数字。如果a=c和b=d,或者a=d和b=c,则两个多米诺骨牌D[i]=[a,b]和D[j]=[c,d]相同。因此,一个多米诺骨牌可以逆转。我们必须返回对(i,j)的对数(i,j),其中0<=i<j<Domino的长度,并确定D[i]等于D[j]。因此,如果多米诺骨牌列表类似于[[1、2],[2、1],[3、4],[6、5]。输出将为1
示例
让我们看下面的实现以更好地理解-
class Solution(object): def numEquivDominoPairs(self, dominoes): d = {} ans = 0 for i in dominoes: i.sort() i = tuple(i) if i not in d: d[i]= 1 else: d[i]+=1 for b in d.values(): ans += ((b*(b-1))//2) return ans ob1 = Solution()print(ob1.numEquivDominoPairs([[1,2],[2,1],[3,4],[5,6], [4,3]]))
输入值
[[1,2],[2,1],[3,4],[5,6],[4,3]]
输出结果
2