풀이시간 : 25분
처음에 문제를 풀려고 할 때 그림에 조금 집중하다가 아예 수학적으로 풀어보자는 생각을 했다.

이 부분에서 뭔가 규칙 같은 게 보였기 때문이다.
일단 브라운+노랑 = 가로*세로가 보였고,
직접 그림을 그려보니 안에 들어가는 노랑은 (가로-2)(세로-2)에 규칙을 띄고 있는 것 같았다.
시간복잡도 줄이기
무작정 i,j를 통해서 찾으니 효율성 부분에서 오답이 나와서 max/2를 넣어봤는데 그래도 오답이 떴다.
그래서 고민을 하다가 애초에 유망성이 없다면 바로 break를 통해서 나오는 게 어떨까 싶어서 넣어봤는데 다행히 성공적이었따!
class Solution {
//테두리는 갈색인데 안에 든 건 노란색!
//b + y = 가로*세로
//y = (가로-2)*(세로-2)
//12 = ? * ?
//2 = (가로-2) * (세로-2)
public int[] solution(int brown, int yellow) {
int[] answer = {0,0};
int max= brown+yellow;
for(int i = max/2; i > 1; i--){//6~1, 12~
for(int j = 1; j <= max/2; j++){//1~6
if(i * j > max){
break;
}
if(i*j == max && (i-2)*(j-2) == yellow){
answer[0] = i;
answer[1] = j;
return answer;
}
}
}
return answer;
}
}