문제 설명
정수가 들어 있는 배열 num_list가 매개변수로 주어집니다. num_list의 원소의 순서를 거꾸로 뒤집은 배열을 return하도록 solution 함수를 완성해주세요.
제한 사항
- 1 ≤ num_list의 길이 ≤ 1,000
- 0 ≤ num_list의 원소 ≤ 1,000
입출력 예
| num_list | result |
| [1, 2, 3, 4, 5] | [5, 4, 3, 2, 1] |
| [1, 1, 1, 1, 1, 2] | [2, 1, 1, 1, 1, 1] |
| [1, 0, 1, 1, 1, 3, 5] | [5, 3, 1, 1, 1, 0, 1] |
입출력 예 설명
입출력 예 #1
num_list가 [1, 2, 3, 4, 5]이므로 순서를 거꾸로 뒤집은 배열 [5, 4, 3, 2, 1]을 return합니다.
입출력 예 #2
num_list가 [1, 1, 1, 1, 1, 2]이므로 순서를 거꾸로 뒤집은 배열 [2, 1, 1, 1, 1, 1]을 return합니다.
입출력 예 #3
num_list가 [1, 0, 1, 1, 1, 3, 5]이므로 순서를 거꾸로 뒤집은 배열 [5, 3, 1, 1, 1, 0, 1]을 return합니다.
풀이
1. reverse 배열을 num_list와 같은 길이로 생성해줍니다.
2. 반복문을 사용하여 인덱스를 반대로 계산해줍니다.
3. reverse 결과를 반환해줍니다.
class Solution {
public int[] solution(int[] num_list) {
int[] reverse = new int[num_list.length]; // 뒤집힌 결과를 저장할 배열
// 배열의 원소를 거꾸로 복사
for (int i = 0; i < num_list.length; i++) {
reverse[i] = num_list[num_list.length - 1 - i];
}
return reverse; // 결과 반환
}
}
✨ num_list[num_list.length - 1 - i] 상세 설명
num_list = {1, 2, 3, 4, 5} | num_list.length = 5
| i | reverse[i] 계산 | 결과 |
| 0 | num_list[5 - 1 - 0] = num_list[4] | 5 |
| 1 | num_list[5 - 1 - 1] = num_list[3] | 4 |
| 2 | num_list[5 - 1 - 2] = num_list[2] | 3 |
| 3 | num_list[5 - 1 - 3] = num_list[1] | 2 |
| 4 | num_list[5 - 1 - 4] = num_list[0] | 1 |
'CodingTest > Programmers' 카테고리의 다른 글
| 문자열 뒤집기 [프로그래머스 코딩테스트 입문] (0) | 2025.01.17 |
|---|---|
| 짝수는 싫어요 [프로그래머스 코딩테스트 입문] (0) | 2025.01.16 |
| 아이스 아메리카노 [프로그래머스 코딩테스트 입문] (0) | 2025.01.13 |
| 나이 출력 [프로그래머스 코딩테스트 입문] (1) | 2025.01.11 |
| 옷가게 할인 받기 [프로그래머스 코딩테스트 입문] (0) | 2025.01.11 |