Skip to content
Bong edited this page Mar 3, 2021 · 4 revisions

(1) Missing Number

Given an array nums containing n distinct numbers in the range [0, n], return the only number in the range that is missing from the array.

Follow up: Could you implement a solution using only O(1) extra space complexity and O(n) runtime complexity?

Example 1:

Input: nums = [3,0,1]
Output: 2

Explanation 1: n = 3 since there are 3 numbers, so all numbers are in the range [0,3]. 2 is the missing number in the range since it does not appear in nums.

(1) Solution

우선 0부터 n까지 다 더한 값을 구해서, 그 값을 이용해서 배열에 있는 값을 순차적으로 뺀다. 최종적으로 남는 값이 missing value다.

class Solution:
    def missingNumber(self, nums: List[int]) -> int:
        n = len(nums)
        s = n * (n + 1) // 2
        for num in nums:
            s -= num
        return s

Clone this wiki locally