문제 설명
0부터 9까지의 숫자 중 일부가 들어있는 정수 배열 numbers
가 매개변수로 주어집니다. numbers
에서 찾을 수 없는 0부터 9까지의 숫자를 모두 찾아 더한 수를 return 하도록 solution 함수를 완성해주세요.
제한사항
numbers
의 길이 ≤ 9numbers
의 모든 원소 ≤ 9numbers
의 모든 원소는 서로 다릅니다.입출력 예
numbers | result |
---|---|
[1,2,3,4,6,7,8,0] | 14 |
[5,8,4,0,6,7,9] | 6 |
입출력 예 설명
numbers
에 없으므로, 5 + 9 = 14를 return 해야 합니다.numbers
에 없으므로, 1 + 2 + 3 = 6을 return 해야 합니다.풀이 과정
0부터 9까지의 합에서 numbers의 합을 빼주면
numbers에 없는 숫자의 합이 나온다 :>
- 0부터 9까지의 수가 들어 있는 배열 reduce(0, +) 사용해 더하기
- numbers 배열 reduce(0, +) 사용해 더하기
- 1에서 2 빼기
Solution
import Foundation
func solution(_ numbers:[Int]) -> Int {
return Array(0...9).reduce(0,+) - numbers.reduce(0,+)
}
근데 굳이 0부터 9까지의 합 구하는 과정 거칠 필요 없이
더한 값 45를 바로 넣어주는 게 더 간결하고 빠르다!
import Foundation
func solution(_ numbers:[Int]) -> Int
return 45 - numbers.reduce(0,+)
}