結果
問題 | No.269 見栄っ張りの募金活動 |
ユーザー |
![]() |
提出日時 | 2015-04-08 02:16:00 |
言語 | PyPy2 (7.3.15) |
結果 |
RE
(最新)
AC
(最初)
|
実行時間 | - |
コード長 | 785 bytes |
コンパイル時間 | 388 ms |
コンパイル使用メモリ | 77,184 KB |
実行使用メモリ | 94,848 KB |
最終ジャッジ日時 | 2024-11-30 22:40:51 |
合計ジャッジ時間 | 4,031 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 21 RE * 1 |
ソースコード
# -*- coding: utf-8 -*-import sysimport mathN,S,K=map(int,raw_input().strip().split())DP=[[0 for i in range(20005)] for j in range(105)]mo = 1000000007# 1人目だけは任意の(Nの倍数)円を寄付できるfor k in range(0,S+N,N):DP[1][k] = 1# i番目の人for i in range(2,N+1):# i番目の人が、(i-1)番の人より1円余分に払うと# 以降の人全体で(N+1-i)円払うことになるmult = N+1-i# t円にできるか?for t in range(0,S+1):# (i-1)番の人よりも最低K円余分に払うif t >= K*mult:DP[i][t] += DP[i-1][t - K*mult]# 既に全体(t-mult)円払っているが# もう1円(全体でmult円)余分に払うケースif t - mult >= 0:DP[i][t] += DP[i][t-mult]DP[i][t] %= moprint DP[N][S]