728x90
나의 풀이
def solution(brown, yellow):
box = brown + yellow
for v in range(2, int(box**0.5) + 1):
if box % v == 0 and v + box/v == (brown + 4) / 2:
return [int(box/v), v]
근의 공식을 이용한 풀이
import math
def solution(brown, yellow):
w = ((brown+4)/2 + math.sqrt(((brown+4)/2)**2-4*(brown+yellow)))/2
h = ((brown+4)/2 - math.sqrt(((brown+4)/2)**2-4*(brown+yellow)))/2
return [w,h]
완전 탐색을 이용한 풀이
def solution(brown, yellow):
w = (brown / 2) + 1
h = 1
while w >= h:
if (w - 2) * (h - 2) == yellow:
return [w, h]
w -= 1
h += 1
반응형
'Coding Test > Programmers' 카테고리의 다른 글
[프로그래머스/파이썬] 조이스틱 (0) | 2022.06.06 |
---|---|
[프로그래머스/파이썬] 체육복 (0) | 2022.06.06 |
[프로그래머스/파이썬] 소수 찾기 (0) | 2022.06.04 |
[프로그래머스/파이썬] 모의고사 (0) | 2022.06.04 |
[프로그래머스/파이썬] H-Index (0) | 2022.06.03 |