728x90
반응형
이분 탐색 문제이다. 소수를 찾는 문제라서 반복문을 100번 정도 돌려줬다.
50번 정도 돌리면 결과의 오차가 10**-9보다 크게 나오는지 통과가 안된다.
N, L, W, H = map(int, input().split())
s, e = 0, max(L, W, H)
for _ in range(100):
m = (s+e)/2
if (L//m)*(W//m)*(H//m) >= N:
s = m
else:
e = m
print("%.10f" %(e))
처음에 아래같이 풀었다가 시간 초과가 떠서 계속 틀렸다.
N, L, W, H = map(int, input().split())
s, e = 0, max(L, W, H)
while e-s > 0.00000001:
m = (s+e)/2
if (L//m)*(W//m)*(H//m) >= N:
s = m
else:
e = m
print("%.10f" %(e))
728x90
반응형
'Agorithm > 백준 알고리즘' 카테고리의 다른 글
백준 알고리즘 16401번 과자 나눠주기(python) (0) | 2021.02.28 |
---|---|
백준 알고리즘 19637번 IF문 좀 대신 써줘(python) (0) | 2021.02.28 |
백준 알고리즘 16561번 3의 배수(python) (0) | 2021.02.28 |
백준 알고리즘 16673번 고려대학교에는 공식 와인이 있다(python) (0) | 2021.02.28 |
백준 알고리즘 16485번 작도하자! - ②(python) (0) | 2021.02.27 |