結果
| 問題 | No.612 Move on grid | 
| コンテスト | |
| ユーザー |  | 
| 提出日時 | 2018-04-10 23:22:42 | 
| 言語 | Fortran (gFortran 14.2.0) | 
| 結果 | 
                                AC
                                 
                             | 
| 実行時間 | 77 ms / 2,500 ms | 
| コード長 | 840 bytes | 
| コンパイル時間 | 766 ms | 
| コンパイル使用メモリ | 33,152 KB | 
| 実行使用メモリ | 6,944 KB | 
| 最終ジャッジ日時 | 2024-06-26 21:05:46 | 
| 合計ジャッジ時間 | 1,836 ms | 
| ジャッジサーバーID (参考情報) | judge1 / judge5 | 
(要ログイン)
| ファイルパターン | 結果 | 
|---|---|
| sample | AC * 4 | 
| other | AC * 17 | 
ソースコード
program main
    implicit none
    integer(8)::g(0:1,-10000:10000),p=1000000007,t,a,b,c,d,e,ans=0,i,j,k,f(3)
    read*,t
    read(*,*)a,b,c,d,e
    f(1)=a
    f(2)=b
    f(3)=c
    do i=0,1
        do j=-10000,10000
            g(i,j)=0
        end do
    end do
    g(0,0)=1
    do i=1,t
        do j=-10000,10000
            g(mod(i,2),j)=0
        end do
        do j=-10000,10000
            if(g(mod(i+1,2),j)==0)cycle
            do k=1,3
                g(mod(i,2),j+f(k))=g(mod(i,2),j+f(k))+g(mod(i+1,2),j)
                g(mod(i,2),j+f(k))=mod(g(mod(i,2),j+f(k)),p)
                g(mod(i,2),j-f(k))=g(mod(i,2),j-f(k))+g(mod(i+1,2),j)
                g(mod(i,2),j-f(k))=mod(g(mod(i,2),j-f(k)),p)
            end do
        end do
    end do
    do i=d,e
        ans=mod(ans+g(mod(t,2),i),p)
    end do
    print*,ans
end program
            
            
            
        