[珂太]ダイナミックプログラミング-1699,平方和
6126 ワード
1699平方和
📒 アルゴリズムタイプ動的プログラミング 📁 問題のソース
https://www.acmicpc.net/problem/1699
💡 アイデア平方の最大数から開始し、-->整数nを加算して を作成します.最大数から増加すると、n=32(25+4+1)5:x/n=32(16+16)2:o などの異常が発生する可能性があります.
📌 マイコード
-間違った答え: dpアルゴリズムを用いて問題を解決する 考察する dpアルゴリズムの問題に初めて接触した. 複数種類のDPアルゴリズム を解いて適用する
📌 リファレンスコード
📒 アルゴリズムタイプ
https://www.acmicpc.net/problem/1699
💡 アイデア
📌 マイコード
-間違った答え:
n=int(input())
k=0
num=[]
while(True):
if(k*k>n):break
num.append(k*k)
k+=1
def max_maker(n,num):
for number in num:
if(number>n):
break
max=number
return max
p=n
result=0
while True:
p=p-max_maker(p,num)
result+=1
if p==0:
break
print(result)
-パス:n = int(input())
dp = [i for i in range (n+1)]
for i in range(1, n+1):
for j in range(1, i):
if (j * j) > i:
break
if dp[i] > dp[i - j * j] + 1:
dp[i] = dp[i - j * j] + 1
print(dp[n])
📌 リファレンスコード
Reference
この問題について([珂太]ダイナミックプログラミング-1699,平方和), 我々は、より多くの情報をここで見つけました https://velog.io/@djg04138/코테-다이나믹-프로그래밍-1699-제곱수의-합テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol