알고리즘에서 많이 쓰이는 2차원 배열을 만드는 방법을 알아보자.
let square = Array.from(new Array(columns), () => new Array(rows).fill(0))
const a = [...Array(rows)].map((_, r)=>[...Array(columns)].map((_, c)=>r*columns+c+1));
let cnt = 1;
let square = [];
let temp_arr = [];
for(let r=0; i<columns; r++){
for(let c=0; j<rows; c++){
temp_arr.push(cnt++);
}
square.push(temp_arr)
temp_arr = [];
}
const board = []
let lines = []
for (let r=0; r<rows; r++){
lines = []
for (let c=0; c<columns; c++){
lines.push(r*columns + c+1)
}
board.push(lines)
}
Array.from({ length: 6 }, (_, r) => {
return Array.from({ length: 6 }, (_, c) => r*6 + c+1)
})
Array.from(new Array(rows), () => new Array(columns).fill(1)).map((row, r) => row.map((_, c) => (r * columns) + (c + 1) ))
방법은 여러가지다.. 코딩테스트 할 때 유용하게 쓰이니 기억해두자.