[백준/파이썬] 4655번 Hangover 풀이

업데이트:



문제 정보


풀이

문제

조화급수 1/2 + 1/3 + ...의 합이 입력값 이상이 되도록 하는 최소 카드 수를 구하는 문제입니다.

코드

import sys;read=sys.stdin.readline
while True:
    x=float(input())
    if x==0:break
    n,s=1,0
    while True:
        if s>=x:break
        n+=1
        s+=1/n
    print(n-1,'card(s)')

설명

1/2부터 순서대로 더하면서 합이 목표 이상이 되는 순간 멈추고 사용한 카드 수를 출력합니다.



댓글남기기