https://school.programmers.co.kr/learn/courses/30/lessons/120821
문제
문제 설명
정수 배열 numbers가 매개변수로 주어집니다. numbers의 각 원소에 두배한 원소를 가진 배열을 return 하도록 solution 함수를 완성해 주세요.
제한사항
-10,000 ≤ numbers의 원소 ≤ 10,000
1 ≤ numbers의 길이 ≤ 1,000
풀이
class Solution1 {
fun solution(numbers: IntArray): IntArray {
return IntArray(numbers.size){ index -> numbers[index] * 2 }
}
}
class Solution2 {
fun solution(numbers: IntArray): List<Int> {
return numbers.map { it * 2 }
}
}
- numbers의 원소의 경우 10,000을 넘지않습니다. 여기서 2배를 한다고 해도 오버플로우 할 상황이 나오지 않기 때문에 해당 예외는 무시합니다.
- 만약 코테가 아닌 상황속 numbers 같은 intarray가 복사된 경우 상관이 없겠지만 해당 배열이 복사를 하지 않은 사용하는 데이터였다면 배열원본을 직접 수정하는 것 여러 에러가 생길 수 있는 상황입니다. 그렇기 때문에 map함수를 이용하여 새로운 리스트를 만들고 IntArray로 반환해 주든가 아니면 IntArray를 numbers크기로 새로 만들어 numbers의 index의 값에 2를 곱하여 넣어주는 작업을 해야 합니다.
- 프로그래머스의 코딩테스의 경우 연속된 값을 반환할 경우 연속되는 값의 자료형만 맞춰주다면 실패로 나오지 않습니다.
결과
'코틀린 > 프로그래머스' 카테고리의 다른 글
[프로그래머스] - 가위 바위 보 (Kotlin) (0) | 2023.07.25 |
---|---|
[프로그래머스] - 문자열 뒤집기 (Kotlin) (0) | 2023.07.25 |
[프로그래머스] - 배열 뒤집기 (Kotlin) (0) | 2023.07.25 |
[프로그래머스] - 최빈값 구하기(Kotlin) (0) | 2023.07.24 |
[프로그래머스] - 몫 구하기 (Kotlin) (1) | 2023.07.24 |