結果
問題 | No.117 組み合わせの数 |
ユーザー | gigurururu |
提出日時 | 2015-01-04 23:50:12 |
言語 | Ruby (3.3.0) |
結果 |
TLE
|
実行時間 | - |
コード長 | 504 bytes |
コンパイル時間 | 261 ms |
コンパイル使用メモリ | 7,680 KB |
実行使用メモリ | 35,200 KB |
最終ジャッジ日時 | 2024-06-13 02:26:13 |
合計ジャッジ時間 | 12,828 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge5 |
(要ログイン)
コンパイルメッセージ
Main.rb:24: warning: assigned but unused variable - r Syntax OK
ソースコード
def pow(a,b,mod) r=1 while b>0 r*=a if b&1>0 r%=mod if r>=mod a*=a a%=mod if a>=mod b>>=1 end r end def nPr(n,r,mod) (1..r).inject(1){|s,i|(s*((n-i+1)%mod))%mod} end def nCr(n,r,mod) ret=(1..r).inject(1){|s,i|(s*((n-i+1)%mod))%mod} (1..r).inject(ret){|s,i|(s*pow(i,mod-2,mod))%mod} end def nHr(n,r,mod) nCr(n+r-1,r,mod) end r=[*0..1000000] m=Hash[?C,:nCr,?P,:nPr,?H,:nHr] gets.to_i.times{ a,b,c=gets.chomp.split(/\(|,|\)/) p send(m[a],b.to_i,c.to_i,1000000007) }