結果

問題 No.1011 Infinite Stairs
コンテスト
ユーザー TANIGUCHI Kousuke
提出日時 2020-04-01 16:57:45
言語 Ruby
(4.0.2)
コンパイル:
ruby -w -c _filename_
実行:
ruby _filename_
結果
TLE  
実行時間 -
コード長 407 bytes
記録
記録タグの例:
初AC ショートコード 純ショートコード 純主流ショートコード 最速実行時間
コンパイル時間 216 ms
コンパイル使用メモリ 8,960 KB
実行使用メモリ 256,384 KB
最終ジャッジ日時 2026-03-14 00:07:24
合計ジャッジ時間 19,908 ms
ジャッジサーバーID
(参考情報)
judge1_0 / judge3_0
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 21 TLE * 3
権限があれば一括ダウンロードができます
コンパイルメッセージ
Syntax OK

ソースコード

diff #
raw source code

def max(a,b); a > b ? a : b; end
  
MOD = 10 ** 9 + 7
N,d,K = gets.split.map(&:to_i)
dp = Array.new(N + 1){Array.new(N * d + 1, 0)}
dp[0][0] = 1
(1 .. N).each do |i|
  (1 .. K).each do |s|
    dp[i - 1][s] = (dp[i - 1][s] + dp[i - 1][s - 1]) % MOD
    if s > d
      dp[i][s] = (dp[i - 1][s - 1] - dp[i - 1][s - d - 1]) % MOD
    else
      dp[i][s] = dp[i - 1][s - 1] % MOD
    end
  end
end
puts dp[N][K]
0