[BOJ]送糖
6333 ワード
解題プロセス
下記の
逆に,右端が+5,左端が+3と考えられる.
前者は
풀이코드 1
、後者は풀이코드 2
である.🤜 プールコード1(エラー)
from math import ceil
N=int(input())
dp=[]
dp.append([3,5])
stat=0
answer=0
for i in range(N//5+1):
arr=dp[i]
new_arr=[]
for a in arr:
if arr.index(a)==0:
new_arr.append(a+3)
new_arr.append(a+5)
else:
new_arr.append(a+5)
dp.append(new_arr)
for d in dp:
answer+=1
if N in d:
print(answer)
stat=1
if stat==0:
print(-1)
(与えられたテストケースはすべて実行されていますが、採点すると実行されないコードは、、、なぜでしょうか、、)🤜 プールコード2(正しい!)
N=int(input())
cnt=0
while(N>0):
if N%5==0:
cnt+=N//5
N-=(N//5)*5 # 그냥 N=0 이라는 뜻
else:
N-=3
cnt+=1
if N==0:
print(cnt)
else:
print(-1)
Reference
この問題について([BOJ]送糖), 我々は、より多くの情報をここで見つけました https://velog.io/@bobsini601/BOJ-설탕-배달テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol