본문 바로가기
algorithm

[프로그래머스]2차원으로 만들기 - java, python

by skysline 2023. 3. 11.
반응형

2차원으로 만들기

문제 설명

정수배열 num_list와 정수 n 이 매개변수로 주어집니다. num_list를 다음 설명과 같이 2차원 배열로 바꿔 retuen 하도록

solution 함수를 완성해 주세요.

num_list가 [1,2,3,4,5,6,7,8]로 길이가 8이고 n이 2 이므로 num_list를 2*4 배열로 다음과 같이 변경합니다. 2차원으로 바꿀 때에는 num_list의 원소들을 앞에서부터 n 개씩 나눠 2차원 배열로 변경합니다.

입출력 예


입출력 예 #1

num_list가 [1,2,3,4,5,6,7,8] 로 길이가 8이고 n이 2 이므로 2*4 배열로 변경한 [[1,2], [3,4], [5,6], [7,8]]을 return 합니다.

입출력 예 #2

num_list가 [100,95,2,4,5,6,18,33,948] 로 길이가 8이고 n이 2 이므로 2*4 배열로 변경한 [[100,95,2], [4,5,6], [18,33,948]]을 return 합니다.


java code

class Solution {
    public int[][] solution(int[] num_list, int n) {
            int len = num_list.length/n;
            int[][] answer = new int[len][n];
            for (int i = 0; i < len; i++) {
                for (int j = 0; j < n; j++) {
                    int idx =i*n+j;
                    answer[i][j] = num_list[idx];
                }
            }
            return answer;
        }
}

python code

def solution(num_list, n):
    length = len(num_list) // n
    answer = [[0] * n for _ in range(length)]
    for i in range(length):
        for j in range(n):
            idx = i * n + j
            answer[i][j] = num_list[idx]
    return answer

반응형

댓글