[Java] 프로그래머스 - n^2 배열 자르기 (2단계)

배똥회장·2022년 9월 20일
0
post-custom-banner

📝 문제

프로그래머스 - n^2 배열 자르기 (2단계)


📝 풀이

📌 작성 코드

//테스트 케이스 1번(n: 3, left: 2, right: 5)을 예로 보면
//1차원 배열로 표현하면 [1,2,3,2,2,3,3,3,3] 이다.
//이를 2차원 배열의 좌표로 표현하면
//[(0.0), (0.1), (0.2), (1.0), (1.1), (1.2), (2.0), (2.1), (2.2)] 이다.
//1차원 배열의 좌표는 [0, 1, 2, 3, 4, 5, 6, 7, 8]인데
//1차원 좌표로 2차원 좌표를 표현하면 (좌표/n, 좌표%n) 인 것을 알 수 있다
//이렇게 푼 코드가 아래의 코드이다.

class Solution {
    public int[] solution(int n, long left, long right) {
        int[] answer = new int[(int) (right - left + 1)];

        for (int i = 0; i < answer.length; i++) {
            long a = (i + left) / n ;
            long b = (i + left) % n;
            
            answer[i] = (int) Math.max(a, b) + 1;
        }
        
        return answer;
    }
}

📌 결과

profile
어쩌면 개발자
post-custom-banner

0개의 댓글