diff --git a/bit_manipulation/missing_number.py b/bit_manipulation/missing_number.py index 92502a778ace..8b8e4fc90ef6 100644 --- a/bit_manipulation/missing_number.py +++ b/bit_manipulation/missing_number.py @@ -9,13 +9,11 @@ def find_missing_number(nums: list[int]) -> int: The missing number. Example: - >>> find_missing_number([0, 1, 3, 4]) + >>> find_missing_number([1, 3, 4, 5, 6]) 2 """ n = len(nums) - missing_number = n + expected_sum = (n + 1) * (nums[0] + nums[-1]) // 2 + actual_sum = sum(nums) - for i in range(n): - missing_number ^= i ^ nums[i] - - return missing_number + return expected_sum - actual_sum