https://www.acmicpc.net/problem/14916
처음에 5까지 hard code 박아놓고 5부터 하니까 틀려서 너무 놀람.
하나 더 , -1로 처리하는 걸 생각을 못해서 96%에서 틀려서 더 놀람.
두 개 빼곤 다 괜찮았다.
import sys
input = sys.stdin.readline
dp = [float('inf')] * 100001
dp[2] = 1
dp[4] = 2
dp[5] = 1
for i in range(6, 100001):
dp[i] = min(dp[i - 5] + 1, dp[i - 2] + 1)
wanted = int(input())
if(dp[wanted] == float('inf')):
print('-1')
else:
print(dp[wanted])
'문제풀이' 카테고리의 다른 글
[PY] 9084 : 동전 (0) | 2025.04.11 |
---|---|
[PY] 2573 : 빙산 (0) | 2025.04.10 |
[PY] 1890 : 점프 (0) | 2025.04.10 |
[PY] 1931 : 회의실 배정 (0) | 2025.04.10 |
[PY] <!> 1700 : 멀티탭 스케줄링 (0) | 2025.04.10 |