본문 바로가기

알고리즘/problem solving

[프로그래머스] level2 완전탐색 카펫

문제링크 : 코딩테스트 연습 - 카펫 | 프로그래머스 (programmers.co.kr)

코딩테스트 연습 - 카펫 프로그래머스 (programmers.co.kr)

풀이 방법

카펫의 가로 길이가 세로길이보다 길어야한다. 가로 길이의 최소인 3 * 3부터 시작해야 카펫에 노란부분을 표현할 수 있다.

2중 반복문으로 통해서 가로 * 세로가 갈색과 노란색의 합이 되어야하면서 배열의 테두리가 갈색의 수와 같아야한다는 조건을 넣었다.

 

나의 풀이

풀이 확인
def solution(brown, yellow):
    answer = []
    for i in range(3, brown//2):
        for j in range(3, i+1):
            if i * j == brown + yellow and 2*(i + (j - 2)) == brown:
                answer = [i, j]
    return answer