https://programmers.co.kr/learn/courses/30/lessons/42842
카펫의 가로,세로 길이를 구하는 문제이다.
yellow카펫(안쪽)의 갯수에 따른 brown(바깥쪽)의 갯수를 구하고, 문제에서 주어진 brown과 비교하여 일치하면 리턴하면 된다.
def divisor_list(n):
arr = []
for i in range(1,int(n**(1/2))+1):
if n%i==0:
arr.append((n//i,i))
return arr
def solution(brown, yellow):
arr = divisor_list(yellow)
for w,h in arr:
if (w+h+2)*2 == brown:
return [w+2,h+2]
return False