https://school.programmers.co.kr/learn/courses/30/lessons/87390
프로그래머스
SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프
programmers.co.kr
class Solution {
public int[] solution(int n, long left, long right) {
int[] answer = new int[(int)(right - left + 1)];
int cnt = 0;
for(long i = left; i <= right; i++) {
// i/n은 행, i%n은 열 계산
answer[cnt++] = (int)(Math.max(i / n, i % n) + 1);
}
return answer;
}
}
/*
1. left에서 right까지의 값을 하나씩 계산
2. 각 자리에 해달하는 값을 행과 열 중에 더 큰 값을 계산하여 배열에 넣음
3. (row, col) 위치의 값은 max(row, col) + 1로 계산
*/
'코딩테스트 > 코딩테스트 문제풀이' 카테고리의 다른 글
| [Java] 프로그래머스 <최소직사각형> (0) | 2025.02.28 |
|---|---|
| [Java] 프로그래머스 <의상> (0) | 2025.02.22 |
| [Java] 프로그래머스 <이진 변환 반복하기> (0) | 2025.02.16 |
| [Java] 프로그래머스 <JadenCase 문자열 만들기> (0) | 2025.02.16 |
| [Java] 프로그래머스 <최댓값과 최솟값> (0) | 2025.02.15 |