본문 바로가기
문제풀이/Programmers

[프로그래머스💯] 코딩테스트 연습 > 완전탐색 > 카펫

by 서상혁 2020. 1. 25.

<프로그래머스 문제풀이>

<출처 : 프로그래머스(Programmers)>

 


해답) 

def solution(brown, red):
    answer = []
    wid_hei_sum = int(brown/2 + 2)
    for height in range(1,wid_hei_sum):
        width = wid_hei_sum-height
        redsum = (width-2)*(height-2)
        if redsum == red :
            answer.append(width)
            answer.append(height)
            break
    return answer

 

red는 안에 직사각형이고 brown 은 직사각형을 감싸는 테두리입니다.

수학적으로 생각해본다면 테두리 가로세로에서 각각 -2 를 한 길이가 직사각형의 가로세로 입니다.

 

세로의 길이를 1부터 높여가며 완전탐색을 돌면서 red 타일 개수가 일치하는지를 찾습니다.

 

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

728x90

댓글