From 8e74e9c3c798240a0f3c94484191b921455ea2c3 Mon Sep 17 00:00:00 2001 From: Sathvik Date: Sat, 14 Oct 2023 09:18:32 +0530 Subject: [PATCH 1/2] Fixed missing number algorithm --- bit_manipulation/missing_number.py | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/bit_manipulation/missing_number.py b/bit_manipulation/missing_number.py index 92502a778ace..56e71d3e291b 100644 --- a/bit_manipulation/missing_number.py +++ b/bit_manipulation/missing_number.py @@ -9,13 +9,14 @@ 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) + + return expected_sum - actual_sum + - for i in range(n): - missing_number ^= i ^ nums[i] - return missing_number From 4f5a595587a1833e065d410a9082f44834626e7b Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Sat, 14 Oct 2023 03:59:01 +0000 Subject: [PATCH 2/2] [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci --- bit_manipulation/missing_number.py | 3 --- 1 file changed, 3 deletions(-) diff --git a/bit_manipulation/missing_number.py b/bit_manipulation/missing_number.py index 56e71d3e291b..8b8e4fc90ef6 100644 --- a/bit_manipulation/missing_number.py +++ b/bit_manipulation/missing_number.py @@ -17,6 +17,3 @@ def find_missing_number(nums: list[int]) -> int: actual_sum = sum(nums) return expected_sum - actual_sum - - -