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

Paek·2023년 2월 28일
0

코테공부

목록 보기
37/44

출처

https://school.programmers.co.kr/learn/courses/30/lessons/42842

문제

갈색과 노란색 카페트가 각각 주어졌을때, 그것으로 만들 수 있는 카펫의 가로 세로 길이를 구하는 문제이다.

접근 방법

이 방법은 완전탐색으로 풀어야 한다. yellow의 세로의 길이를 먼저 기준으로 잡는다. 모든 가능한 세로의 길이를 보며 대응하는 yellow brown 카페트의 길이와 대조해보면 결과를 알 수 있다.

풀이

def solution(brown, yellow):
    answer = []
    tmp = []
    i = 1
    while i <= yellow:
        if yellow % i == 0:
            tmp.append(i)
        i += 1
    tmp.sort(reverse=True)
    for i in tmp:
        if (i+2) *2 + (yellow // i) * 2 == brown:
            answer = [yellow // i + 2, i + 2]    
    return answer
profile
티스토리로 이전했습니다. https://100cblog.tistory.com/

0개의 댓글