inblog logo
|
stupefyee
    알고리즘문제풀기

    [JAVA 문제 풀이] 294. n^2 배열 자르기

    프로그래머스 (87390)
    Stupefyee's avatar
    Stupefyee
    Jun 02, 2025
    [JAVA 문제 풀이] 294. n^2 배열 자르기
    Contents
    내가 작성한 코드다른 사람의 코드
    school.programmers.co.kr
    https://school.programmers.co.kr/learn/courses/30/lessons/87390
    notion image
     

    내가 작성한 코드

    class Solution { public int[] solution(int n, long left, long right) { // 구간의 크기 계산 (left~right까지의 원소 개수) int size = (int)(right - left + 1); // 결과를 담을 배열 생성 int[] answer = new int[size]; // left~right 구간의 각 인덱스에 대해 값 계산 for (int idx = 0; idx < size; idx++) { long pos = left + idx; // 전체 배열에서의 실제 위치 int row = (int)(pos / n); // 2차원 배열의 행 인덱스 int col = (int)(pos % n); // 2차원 배열의 열 인덱스 // 규칙에 따라 값 할당: (행, 열 중 큰 값) + 1 answer[idx] = Math.max(row, col) + 1; } // 결과 반환 return answer; } }
     

    다른 사람의 코드

    import java.util.stream.LongStream; class Solution { public int[] solution(int n, long left, long right) { return LongStream.rangeClosed(left, right).mapToInt(value -> (int) (Math.max(value / n, value % n) + 1)).toArray(); } }
     
    Share article
    Contents
    내가 작성한 코드다른 사람의 코드

    stupefyee

    RSS·Powered by Inblog