假设我们有一个称为数字的列表,其长度为n +1。这些数字是从范围1、2,...,n中选取的。众所周知,使用信鸽原理,必须有一个副本。我们必须找到并退还。
因此,如果输入类似于[2,1,4,3,3],则输出将为3
为了解决这个问题,我们将遵循以下步骤-
l:= nums的大小
温度:= l *(l-1)/ 2
temp_sum:=所有元素的总和
返回(temp_sum-temp)
让我们看下面的实现以更好地理解-
class Solution: def solve(self, nums): l = len(nums) temp = l*(l-1)/2 temp_sum = sum(nums) return temp_sum-temp ob = Solution()print(ob.solve([2, 1, 4, 3, 3]))
[2, 1, 4, 3, 3]
输出结果
3