程序查找对 (i, j) 的数量,使得 Python 中的第 i 个和第 j 个元素相同
假设我们有一个数组nums。我们必须找到有多少对(i,j)使得nums[i]=nums[j]但i与j不同。
因此,如果输入类似于nums=[1,3,1,3,5],那么输出将是4,因为这些对是(0,2)、(2,0)、(1,3)和(3,1)
示例
让我们看看以下实现以获得更好的理解-
def solve(nums):
d = {}
for c in nums:
d[c] = d[c] + 1 if c in d.keys() else 1
res = 0
for c in (x for x in d if d[x] > 1):
res += (d[c] * (d[c]-1))
return res
nums = [1,3,1,3,5]
print(solve(nums))输入
[1,3,1,3,5]输出结果
4
热门推荐
10 香港老妈结婚祝福语简短
11 毕业立体贺卡祝福语简短
12 简短新年年会祝福语
13 评论小品祝福语大全简短
14 恭喜师兄结婚祝福语简短
15 员工集体辞职祝福语简短
16 高中新生祝福语 简短
17 装修祝福语男生搞笑简短
18 生日开业蛋糕祝福语简短