/* 2차원으로 만들기
* 정수 배열 num_list와 정수 n이 매개변수로 주어집니다.
* num_list를 다음 설명과 같이 2차원 배열로 바꿔 return
*
* num_list n result
* [1, 2, 3, 4, 5, 6, 7, 8] 2 [[1, 2], [3, 4], [5, 6], [7, 8]]
* [100, 95, 2, 4, 5, 6, 18, 33, 948] 3 [[100, 95, 2], [4, 5, 6], [18, 33, 948]]
*/
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 | public class programmer_0_76 { static int[] a1 = {1, 2, 3, 4, 5, 6, 7, 8}; static int b1 = 2; static int[] a2 = {100, 95, 2, 4, 5, 6, 18, 33, 948}; static int b2 = 3; public int[][] solution(int[] num_list, int n) { int[][] answer = new int[num_list.length/n][n]; System.out.println(answer.length + " / " + answer[0].length); int idx = 0; for(int i = 0; i < num_list.length; i = i+n){ for(int k = 0; k < n; k++){ answer[idx][k] = num_list[i + k]; } idx++; } /* 다른사람 풀이 int length = num_list.length; answer = new int[length/n][n]; for(int i=0; i<length; i++){ answer[i/n][i%n]=num_list[i]; } */ for(int i = 0; i < answer.length; i++){ for(int k = 0; k < answer[i].length; k++){ System.out.print(answer[i][k]+","); } System.out.println(""); } return answer; } public static void main(String args[]){ programmer_0_76 t = new programmer_0_76(); // System.out.println("---------------------------------------"); // System.out.println("result = " + t.solution(a1,b1)); System.out.println("---------------------------------------"); System.out.println("result2 = " + t.solution(a2,b2)); System.out.println("---------------------------------------"); } } | cs |