結果
問題 | No.129 お年玉(2) |
ユーザー |
![]() |
提出日時 | 2016-10-10 18:14:21 |
言語 | Fortran (gFortran 14.2.0) |
結果 |
AC
|
実行時間 | 721 ms / 5,000 ms |
コード長 | 867 bytes |
コンパイル時間 | 216 ms |
コンパイル使用メモリ | 31,488 KB |
実行使用メモリ | 393,856 KB |
最終ジャッジ日時 | 2024-11-28 00:36:45 |
合計ジャッジ時間 | 24,884 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 46 |
ソースコード
program mainimplicit noneinteger*8::N,M,amariinteger*4,parameter::sen=1000integer*4::memo(10**4,0:10**4)data memo/100010000*0/read *,N,MN = N/senamari = MOD(N, M)memo = 0print '(i0)', get_combination(M, MIN(amari, M-amari), memo)containsrecursive function get_combination(N,R, memo) result(NCR)integer*8::N,R,NCRinteger*4,parameter::modular=10**9integer*4::memo(10**4,0:10**4)if(memo(N,R).ne.0) thenNCR = memo(N,R)elseif(R.eq.0) thenNCR = 1else if(R.eq.1) thenNCR = Nelse if(N-R.lt.R) thenNCR = get_combination(N, N-R, memo)elseNCR = get_combination(N-1,R,memo) + get_combination(N-1,R-1,memo)end ifNCR = MOD(NCR, modular)memo(N,R) = NCRend ifend function get_combinationend program main