본문 바로가기
Coding/Coding Test

[Coding Test]순서 바꾸기(java, python, 프로그래머스)

by Thompson 2024. 8. 26.
728x90
문제 설명

 

정수 리스트 num_list와 정수 n이 주어질 때, num_list를 n 번째 원소 이후의 원소들과 n 번째까지의 원소들로 나눠 n 번째 원소 이후의 원소들을 n 번째까지의 원소들 앞에 붙인 리스트를 return하도록 solution 함수를 완성해주세요.

제한사항


2 ≤ num_list의 길이 ≤ 30
1 ≤ num_list의 원소 ≤ 9
1 ≤ n ≤ num_list의 길이

입출력 예


입출력 예 #1
[2, 1, 6]에서 첫 번째 이후의 원소는 [1, 6]이고 첫 번째까지의 원소는 [2]입니다. 두 리스트를 이어 붙이면 [1, 6, 2]가 됩니다.

 

입출력 예 #2
[5, 2, 1, 7, 5]에서 세 번째 이후의 원소는 [7, 5]이고 세 번째까지의 원소는 [5, 2, 1]입니다. 두 리스트를 이어 붙이면 [7, 5, 5, 2, 1]가 됩니다.

 

 

 

Java
class Solution {
    public int[] solution(int[] num_list, int n) {
        int index = n - 1;
        int[] result = new int[num_list.length];

        int count = 0;
        for (int i = index + 1; i < num_list.length; i++) {
            result[count++] = num_list[i];
        }

        for (int i = 0; i <= index; i++) {
            result[count++] = num_list[i];
        }

        return result;
    }
}

 

Python
def solution(num_list, n):
    answer = []
    for i in num_list[n:]:
        answer.append(i)
    for j in num_list[:n]:
        answer.append(j)
    return answer