
エントリーの編集

エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
【Python】DP(動的計画法)で次元を減らすテクニック【AtCoder】 - Qiita
記事へのコメント0件
- 注目コメント
- 新着コメント
このエントリーにコメントしてみましょう。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています

- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
【Python】DP(動的計画法)で次元を減らすテクニック【AtCoder】 - Qiita
import itertools,sys def I(): return int(sys.stdin.readline().rstrip()) def LI(): return list(map... import itertools,sys def I(): return int(sys.stdin.readline().rstrip()) def LI(): return list(map(int,sys.stdin.readline().rstrip().split())) ############################# N = I() p = LI() dp = [0]*10001 #0:その点数存在しない、1:その点数存在する dp[0] = 1 for i,j in itertools.product(range(1,N+1),range(10001)[::-1]): pi = p[i-1] if j-pi>=0: dp[j] = max(dp[j],dp[j-pi]) #選んだ場合 #dp[j] = max(dp[j],dp[j]) #選ばなかった場合→不要 p