結果

問題 No.117 組み合わせの数
コンテスト
ユーザー ああ
提出日時 2026-05-18 22:08:05
言語 PyPy3
(7.3.17)
コンパイル:
pypy3 -mpy_compile _filename_
実行:
pypy3 _filename_
結果
WA  
実行時間 -
コード長 557 bytes
記録
記録タグの例:
初AC ショートコード 純ショートコード 純主流ショートコード 最速実行時間
コンパイル時間 256 ms
コンパイル使用メモリ 84,608 KB
実行使用メモリ 167,040 KB
最終ジャッジ日時 2026-05-18 22:08:09
合計ジャッジ時間 1,793 ms
ジャッジサーバーID
(参考情報)
judge3_0 / judge1_0
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
other WA * 1
権限があれば一括ダウンロードができます

ソースコード

diff #
raw source code

def aa(q,w):
    if q<w or w<0:
        return 0
    global mod
    return f[q]*g[w]%mod*g[q-w]%mod

f=[1]*10**6*5;g=[1]*len(f)
mod=10**9+7
for i in range(1,len(f)):
    f[i]=f[i-1]*i%mod
g[-1]=pow(f[-1],mod-2,mod)
for i in range(len(f)-1,0,-1):
    g[i-1]=g[i]*i%mod
for i in range(int(input())):
    s=input()
    c=0
    for j in range(3,len(s)):
    	if s[j]==",":
    		c=j
    		break
    a,b=int(s[2:c]),int(s[c+1:-1])
    if s[0]=="C":
        print(aa(a,b))
    elif s[0]=="P":
        print(aa(a,b)*f[b]%mod)
    else:
        print(aa(a+b-1,a-1))
0