가장 큰 정사각형 찾기
function solution(board) {
let max = -Infinity;
for (let row = 0; row < board.length; row++) {
for (let col = 0; col < board[0].length; col++) {
if (board[row][col] > max) {
max = board[row][col];
}
}
}
for (let row = 1; row < board.length; row++) {
for (let col = 1; col < board[0].length; col++) {
if (board[row][col] != 0) {
const left = board[row][col - 1];
const top = board[row - 1][col];
const diagonal = board[row - 1][col - 1];
board[row][col] = Math.min(diagonal, Math.min(left, top)) + 1;
if (board[row][col] > max) {
max = board[row][col];
}
}
}
}
return max * max;
}