# 문제
# 풀이
" o, o, o, o, o, o, o, o, o, o " 다음과 같이 10마리 새가 존재하면, 현재 음정이 1이면 한마리가 날라가서 9마리가 남고 음정이 2증가하여 두마리가 날라거서 7마리가 남고.. 를 계속해서 반복하다가, 음정(날라가야하는 수)보다 남아있는 새의 개수가 더 작은 경우 음정이 1로 리셋되서 다시 시작되는 문제이다. 문제만 이해했다면 쉽게 풀 수 있다.
# 코드
def solve():
n = int(input())
fly = 1
time = 0
while n > 0:
if n >= fly :
n = n - fly
fly +=1
time += 1
# print(f"n {n} fly{fly}")
else :
fly = 1
# print(f"n {n} fly{fly}")
print(time)
if __name__ == '__main__':
solve()
# 마치며
'•알고리즘(Algorithm ) > 문제풀이' 카테고리의 다른 글
[백준-1302] 베스트 셀러 파이썬 풀이 (0) | 2022.08.09 |
---|---|
[백준-1543] 문서 검색 파이썬 풀이 (0) | 2022.08.09 |
[백준-1668] 트로피 진열 파이썬 (0) | 2022.08.09 |
[백준-2751] 수 정렬하기2 파이썬 (0) | 2022.08.09 |
[백준-7490] 0만들기 파이썬 (0) | 2022.08.08 |