문제
https://school.programmers.co.kr/learn/courses/30/lessons/120842
풀이
1. 2차원 배열로 변경해야하기 때문에 먼저 새로운 2차원 배열을 생성할때 길이를 구했다.
2. 행은 row 변수로 num_list 배열에서 n개씩 묶기 때문에 num_list.length/n 으로 길이를 구했다.
3. int[][] answer = new int[row][n] 으로 2차원 배열을 새로 생성했다.
4. for문을 이용하여 행과 열의 반복을 만들었고 answer[i][j]의 자리에 num_list[idx]의 값이 저장되도록 했다. 이때 idx의 값이 반복될때마다 증가해야 하므로 for문 바깥에 idx 변수를 0으로 초기화하여 선언해주고, num_list[idx++] 로 해주었다.
5. 그리고 answer값을 반환하였다.
코드
class Solution {
public int[][] solution(int[] num_list, int n) {
int len = num_list.length;
int row = len/n;
int idx = 0;
int[][] answer = new int[row][n];
for(int i=0; i<row; i++){
for(int j=0; j<n; j++){
answer[i][j] = num_list[idx++];
}
}
return answer;
}
}
'하루하루 > 프로그래머스 문제풀이' 카테고리의 다른 글
[Lv.0 - Java] 120883. 로그인 성공? (0) | 2023.12.25 |
---|---|
[Lv.0 - Java] 120912. 7의 개수 (1) | 2023.12.19 |
[Lv.0 - Java] 120886. A로 B 만들기 (0) | 2023.12.18 |
[Lv.0 - Java] 120904. 숫자 찾기 (0) | 2023.12.15 |
[Lv.0 - Java] 120897. 약수 구하기 (0) | 2023.12.15 |