나의 개발일지

[프로그래머스] Lv.2 카펫 [Python, 파이썬] 본문

프로그래머스

[프로그래머스] Lv.2 카펫 [Python, 파이썬]

YoonJuHan 2023. 4. 8. 14:33
def solution(brown, yellow):

    카펫크기 = brown + yellow # 카펫 전체 크기
    약수 = []

    # 약수들로만 계산하기 위해 약수 구함
    # 가로, 세로의 최소 크기는 3이상이라서 3부터 ~ 3으로 나눈 몫까지
    for i in range(3, 카펫크기 // 3 + 1): 
        if 카펫크기 % i == 0:
            약수.append(i)
    
    for i in range(len(약수)):
        세로 = 약수[i]
        가로 = 카펫크기 // 세로
        if (가로 - 2) * (세로 - 2) == yellow: # 노란 카펫의 크기와 맞는지
            return [가로, 세로]

 

Comments