https://school.programmers.co.kr/learn/courses/30/lessons/42842
def solution(brown, yellow):
for i in range(3, (brown+yellow)//2+1):
if (brown+yellow)%i == 0:
x, y = i, (brown+yellow)//i
if brown==x*y-yellow and yellow==(x-2)*(y-2):
return sorted([x, y], reverse=True)
테두리는 x * y-yellow = brown,
내부는 (x-2) * (y-2) = yellow 를 만족할 때 성립한다는 점을 이용한다.