function solution(brown, yellow) {
for (let i = 1; i <= yellow / i; i++) {
if (yellow % i != 0) continue;
let num = yellow / i;
if ((num + 2) * 2 + i * 2 == brown) return [num+2, i+2];
}
return [0, 0];
}
for (let i = 1; i <= yellow / i; i++) {
...
}
i는 노란 격자의 세로 길이이고, yellow / i 는 노란 격자의 가로 길이를 의미함
가로 길이는 세로 길이보다 크거나 같아야 한다는 조건이 있기 때문에 i의 조건이 가로보다 작거나 같도록 설정함
if (yellow % i != 0) continue;
if ((num + 2) 2 + i 2 == brown) return [num+2, i+2];