https://programmers.co.kr/learn/courses/30/lessons/42842
class Solution {
public int[] solution(int brown, int yellow) {
int[] answer = new int[2];
for (int i = 1; i <= yellow; i++) {
if (yellow % i != 0) continue; // 사각형이 되지 않는 경우
int row = i;
int col = yellow / row;
if (row > col) break; // 가로 길이보다 세로 길이가 긴 경우
if ((col + 2) * 2 + (row * 2) == brown) {
answer[0] = col + 2;
answer[1] = row + 2;
}
}
return answer;
}
}
row,col은 각각 yellow의 행,열의 수이다. 직접 규칙을 찾아서 코드로 구현했다.