본문 바로가기

알고리즘풀이

LeetCode: Missing Number

문제설명

  • 0부터 배열의 개수 n까지의 숫자 중, 주어진 배열의 수에서 없는 숫자를 반환하라

문제풀이

  • 0부터 배열의 개수 n까지를 더하고, 그 수에서 주어진 배열의 합을 뺀다.
func missingNumber(_ nums: [Int]) -> Int {
    let count = nums.count
    let sum = (count * (count + 1)) / 2
    let subtract = nums.reduce(0,+)

    return sum - subtract
}

print(missingNumber([0,1,2,3,4,5])) // 6
print(missingNumber([3,0,1])) // 2
print(missingNumber([9,6,4,2,3,5,7,0,1])) // 8
print(missingNumber([0])) // 1