ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [프로그래머스] Level.2 n^2 배열자르기 (JAVA)
    카테고리 없음 2022. 6. 2. 15:21

    문제 설명과 제한사항

    풀이

    class Solution {
        public int[] solution(int n, long left, long right) {
            int[] answer = new int[(int)(right - left + 1)];
            int index = 0;
            for(long i = left; i <= right; i++){
                answer[index++] = (int)Math.max((i/n),i%n) + 1;
            }
            return answer;
        }
    }

    ++

    문제 접근 자체는 쉽지만 어려운점은 left right 가 int형으로 표현하기엔 너무 크다. (제한사항)

    그래서 문제의 순서처럼 이차원 배열을 만들고, 일차 배열로 바꾼 뒤 자르기에는 문제가 생긴다.

    그래서 몫은 열 나머지는 행을 나타내는 것을 이용해서 풀었다.

    +1 을 하는 이유는 i 가 1부터 시작하기 때문임.

Designed by Tistory.