【題解】ZeroJudge d397: 00147 – Dollars

【題目敘述】https://zerojudge.tw/ShowProblem?problemid=d397

N = [10000, 5000, 2000, 1000, 500, 200, 100, 50, 20, 10, 5]
lenN = len(N)
maxn = 30005
dp = [0] * maxn
dp[0] = 1
for i in range(lenN):
    for j in range(N[i], maxn):
        dp[j] += dp[j - N[i]]

while True:
    S = input()
    if S == "0.00":
        break
   
    M = int(float(S) * 10000) // 100
    print(f"{S:>6s}{dp[M]:>17d}")
分享本文 Share with friends