정수 배열 numbers가 주어집니다. numbers에서 서로 다른 인덱스에 있는 두 개의 수를 뽑아 더해서 만들 수 있는 모든 수를 배열에 오름차순으로 담아 return 하도록 solution 함수를 완성해주세요.
numbers | result |
---|---|
[2,1,3,4,1] | [2,3,4,5,6,7] |
[5,0,2,7] | [2,5,7,9,12] |
입출력 예 #1
입출력 예 #2
#1
import Foundation
func solution(_ numbers:[Int]) -> [Int] {
// 결과값을 담을 배열 선언
var result = [Int]()
// 첫번째 인덱스와 그 다음 인덱스의 숫자를 계산하기위해 이중포문 사용
for i in 0 ..< numbers.count-1 {
for j in i + 1 ..< numbers.count {
// result 배열에 두 수를 더한 값이 없다면 더한 값 담기
if !result.contains(numbers[i] + numbers[j]) {
result.append(numbers[i] + numbers[j])
}
}
}
// 결과값 오름차순으로 정렬 후 반환
return result.sorted()
}
채점결과
#2
import Foundation
func solution(_ numbers:[Int]) -> [Int] {
// 중복제거를 위한 Set 선언
var st = Set<Int>()
// 첫번째 인덱스와 그 다음 인덱스의 숫자를 계산하기위해 이중포문 사용
for i in 0 ..< numbers.count - 1 {
for j in i + 1 ..< numbers.count {
// 두 수를 더한 값 st 배열에 담기
st.insert(numbers[i] + numbers[j])
}
}
// 결과값 오름차순으로 정렬 후 반환
return st.sorted()
}
채점결과