สมมติว่าเรามีรายการตัวเลขที่เรียกว่า nums of length n + 1 ตัวเลขเหล่านี้ถูกเลือกจากช่วง 1, 2, ..., n อย่างที่เราทราบกันดีว่าการใช้หลักพิราบต้องมีการซ้ำซ้อน เราต้องหามันแล้วส่งคืน
ดังนั้นหากอินพุตเป็น [2, 1, 4, 3, 3] เอาต์พุตจะเป็น 3
เพื่อแก้ปัญหานี้ เราจะทำตามขั้นตอนเหล่านี้ -
- l :=ขนาดของ nums
- อุณหภูมิ :=l*(l-1) /2
- temp_sum :=ผลรวมขององค์ประกอบทั้งหมดเป็น nums
- ผลตอบแทน (temp_sum - ชั่วคราว)
ให้เราดูการใช้งานต่อไปนี้เพื่อความเข้าใจที่ดีขึ้น -
ตัวอย่าง
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