프로그래밍/코드리뷰
[코드리뷰]프로그래머스_카펫
donie
2020. 10. 30. 00:25
1. 문제
programmers.co.kr/learn/courses/30/lessons/42842
코딩테스트 연습 - 카펫
Leo는 카펫을 사러 갔다가 아래 그림과 같이 중앙에는 노란색으로 칠해져 있고 테두리 1줄은 갈색으로 칠해져 있는 격자 모양 카펫을 봤습니다. Leo는 집으로 돌아와서 아까 본 카펫의 노란색과
programmers.co.kr
2. 소스코드
def solution(brown, red): for i in range(1, int(red**(1/2))+1): if red % i == 0: if 2*(i + red//i) == brown-4: return [red//i+2, i+2] |
3. 고찰
*문제에서 안쪽 카펫 컬러가 red -> yellow로 변경되었다. 해당 풀이는 그 전에 푼 것이라 red로 명명.
i는 세로, red // i는 가로를 의미한다.
안의 red의 둘레 길이 = 바깥 brown의 개수 - 4
이 둘레에 대한 조건을 만족하면 해당 가로, 세로 길이를 리턴한다.