수학을 활용한 기초 구현 문제.
단순 배열 idx 문제는 오랜만이다. 1차원 배열을 어떻게 2차원으로 나타낼지를 수학적으로 접근하는 문제이다.
당연하게 생각했을 법 하면서도, 단 한번도 이런 생각을 해본 적이 없어서 오히려 신선? 했던 문제였다.
일차원 배열의
idx
를 이차원 배열로 변화시키는 법
(지금은rlen
,clen
이 동일한 경우만 한정)
해당 일차원 배열의idx
를 2차원 배열의len
으로 나누었을 때 몫이r
값
해당 일차원 배열의idx
를 2차원 배열의len
으로 나누었을 때 나머지가c
값
function solution(n, left, right) {
let answer = [];
for(let i=left; i<=right; i++) answer.push(Math.max(Math.floor(i/n),i%n)+1);
return answer;
}