結果

問題 No.612 Move on grid
コンテスト
ユーザー TANIGUCHI Kousuke
提出日時 2017-12-14 14:50:23
言語 Ruby
(4.0.2)
コンパイル:
ruby -w -c _filename_
実行:
ruby _filename_
結果
TLE  
実行時間 -
コード長 501 bytes
記録
記録タグの例:
初AC ショートコード 純ショートコード 純主流ショートコード 最速実行時間
コンパイル時間 59 ms
コンパイル使用メモリ 9,088 KB
実行使用メモリ 95,104 KB
最終ジャッジ日時 2026-05-25 06:55:03
合計ジャッジ時間 5,961 ms
ジャッジサーバーID
(参考情報)
judge3_1 / judge2_0
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 4
other AC * 1 TLE * 1 -- * 16
権限があれば一括ダウンロードができます
コンパイルメッセージ
Syntax OK

ソースコード

diff #
raw source code

M = 1000_000_007
GND = 10_000
dp = Array.new(501){ Array.new(GND * 2 + 1, 0) }

T = gets.to_i
a,b,c,d,e = gets.split.map(&:to_i)

MOVE = [a, -a, b, -b, c, -c]
dp[0][GND] = 1

(1 .. T).each do |t|
    (0 .. 20000).each do |s|
        if dp[t-1][s] > 0
            MOVE.each do |m|
                dp[t][s + m] += dp[t - 1][s]
                dp[t][s + m] %= M if dp[t][s + m] > M
            end
        end
    end
end
ans = (d .. e).inject(0) do |sum, k|
    (sum + dp[T][GND + k]) % M
end
puts ans 
0