https://school.programmers.co.kr/learn/courses/30/lessons/68644
문제
정수 배열 numbers가 주어집니다. numbers에서 서로 다른 인덱스에 있는 두 개의 수를 뽑아 더해서 만들 수 있는 모든 수를 배열에 오름차순으로 담아 return 하도록 solution 함수를 완성해 주세요.
제한사항
numbers의 길이는 2 이상 100 이하입니다.
numbers의 모든 수는 0 이상 100 이하입니다.
풀이
class Solution {
fun solution(numbers: IntArray): List<Int> {
val mutableList = mutableListOf<Int>()
for (i in 0 until numbers.size - 1){
for (j in i+1 until numbers.size){
mutableList.add(numbers[i] + numbers[j])
}
}
return mutableList.toSet().sorted()
}
}
- 해당문제는 서로다른 인덱스의 두 값을 더하되 중복처리와 정렬도 하라고 합니다.
- 중복처리와 정렬같은 경우 코틀린에서 해당 함수를 지원해 주기 때문에 그분은 따로 구현을 해주지 않아도 됩니다
- 2 값을 더하는 것은 2중 반복문을 이용해서 서로 index가 겹치지 않게 값을 뽑아내서 더한 값들은 mutableList에 넣어주면 됩니다.
결과
'코틀린 > 프로그래머스' 카테고리의 다른 글
[프로그래머스] - 의상(Kotlin) (0) | 2023.08.30 |
---|---|
[프로그래머스] - 가장 가까운 같은 글자(Kotlin) (0) | 2023.08.29 |
[프로그래머스] - 문자열 잘라서 정렬하기(Kotlin) (0) | 2023.08.28 |
[프로그래머스] - 배열의 길이를 2의 거듭제곱으로 만들기(Kotlin) (0) | 2023.08.28 |
[프로그래머스] - [1차] 프렌즈4블록(Kotlin) (1) | 2023.08.21 |