Logic Building
# Take array
n = int(input("Enter n: "))
arr = []
for i in range(n + 1):
arr.append(int(input(f"Element {i+1}: ")))
# Find duplicate using sum
expected_sum = n * (n + 1) // 2
actual_sum = sum(arr)
duplicate = actual_sum - expected_sum
print(f"Duplicate: {duplicate}")Output
Enter n: 4 Element 1: 1 Element 2: 2 Element 3: 3 Element 4: 4 Element 5: 3 Duplicate: 3
Use sum difference to find duplicate.
Key Concepts:
- Expected sum for 1 to n
- Actual sum includes duplicate
- Duplicate = actual - expected