유형 : 완전탐색
풀이 시간 : 7분
def solution(brown, yellow):
answer = []
avail = []
for i in range(1, int(yellow ** 0.5) + 1):
if yellow % i == 0:
avail.append([i, yellow//i])
for av in avail:
[wid, dep] = av
if 2* wid + 2 * dep + 4 == brown:
return [dep + 2, wid + 2]
return answer
yellow를 기준으로 가능한 모든 yellow의 가로, 세로 길이를 avail에 append한 뒤,
예상 brown의 길이를 계산하여 실제 brown 값과 대조한다.
일치하는 경우 정답이므로 실제 길이를 계산해 return한다.
'프로그래머스 > Lv. 2' 카테고리의 다른 글
16. 게임 맵 최단거리 ★ (BFS, zip) (0) | 2024.07.19 |
---|---|
15. 타겟 넘버 ★(DFS) (0) | 2024.07.18 |
13. 소수 찾기 (완전 탐색) (1) | 2024.07.18 |
12. H-index ★★ (정렬) (0) | 2024.07.18 |
11. 가장 큰 수 ★★ (정렬) (0) | 2024.07.18 |