Algorithm & Data Structures/Programers
Lv 2. n제곱배열자르기
Geisha
2024. 7. 22. 19:03
코드 흐름
- 코드의 규칙은 간단하다 left와 right 까지만을 찾아봐야한다 n 의 크기가 백만이므로 제곱을 루프 돌리면 overflow 발생한다.
- 1차원배열에서의 그 위치의 자리는 Max(i/n,i%n) 임을 알게되었다.
- 따라서 left와 right 까지 돌아주면서 list에 해당하는 값을 집어넣어 반환하였다.
import java.util.*;
class Solution {
public List<Long> solution(int n, long left, long right) {
List<Long> list = new ArrayList<>();
for(long i=left;i<right+1;i++){
list.add(Math.max(i/n,i%n) + 1);
}
return list;
}
}