Search
Duplicate

카펫

문제 설명 및 제한사항

아이디어 및 해결 방법

코드

def divisors(n): return [i for i in range(1, n+1) if n % i == 0] def solution(brown, yellow): # 가로를 x, 세로를 y라 하면 # (x - 2) * (y - 2) = yellow # 2 * (x + y) - 4 = brown # (x + y) = (brown + 4) // 2 # xy - 2 * (x + y) = yellow - 4 xplusy = (brown + 4) // 2 xy = yellow - 4 + 2 * xplusy for x in divisors(xy): y = xy // x if x + y == xplusy: return max(x, y), min(x, y)
Python
복사

출처

프로그래머스 코딩테스트 연습 https://school.programmers.co.kr/learn/challenges