[프로그래머스/Python] - Lv2 / 카펫

Chooooo·2023년 2월 28일
0
post-thumbnail

level2-완전탐색-카펫

def solution(brown, yellow):
    a = brown
    b = yellow
    
    #a+b = xy 이용
    n = a+b #가로 세로 넓이.
    cnt = 0
    res = []
    for y in range(1,n+1): #세로를 통해서 ?
        #n/x = y
        if n % y == 0:
            x = n // y
        if x*y == n:
            if x >= y and (x-2) * (y-2) == b:
                resX = x
                resY = y
                
    res.append(resX)
    res.append(resY)
    return res

코멘트

해당 문제는 공식을 찾는 것이 핵심이었다.

  • a + b = xy
  • (x-2)(y-2) = b
    이 두 공식을 활용했다면 문제를 쉽게 풀었을 것이다.
profile
back-end, 지속 성장 가능한 개발자를 향하여

0개의 댓글