Large nCr Small Modulus(Easy)

2 secs 1024 MB
143-378's icon 143-378

注意

本問題は簡易版の制約です。
1Ei1 \leq E_iとした制約強化版は別に出題します。

問題文

二項係数(NR)\binom{N}{R}MMで割った余りを求めてください。
ここで、M=i=1CPiEiM = \prod_{i=1}^C P_i ^ {E_i}と素因数分解できることが保証されます。
本問ではEi=1E_i = 1です。

制約

  • 1RN10181 \leq R \leq N \leq 10^{18}
  • 2M1072 \leq M \leq 10^7
  • M=i=1CPiEiM = \prod_{i=1}^C P_i ^ {E_i}
  • 1C1 \leq C
  • 2P1<P2<・・・<PC2 \leq P_1 < P_2 < ・・・ < P_C
  • PiP_iは互いに相異なる 素数
  • Ei=1E_i = 1
  • 入力はすべて整数

入力

入力は以下の形式で標準入力から与えられる。

NN RR MM
CC
P1P_1 P2P_2 ・・・ PCP_C
E1E_1 E2E_2 ・・・ ECE_C

出力

答えを出力せよ。

入出力例

入力例1
5 2 3
1
3
1
出力例1
1

(52)=10\binom{5}{2} = 10です。
これを33で割った余りは11です。

入力例2
99824 4 353
1
353
1
出力例2
305

(998244)=4137162004755731876\binom{99824}{4} = 4137162004755731876です。
これを353353で割った余りは305305です。

入力例3
9982 4 4353
2
3 1451
1 1
出力例3
585

(99824)=413426150188485\binom{9982}{4} = 413426150188485です。
これを43534353で割った余りは585585です。

入力例4
1234 567 890
3
2 5 89
1 1 1
出力例4
450

(1234567)1.1668×10368\binom{1234}{567} ≈ 1.1668 × 10^{368}です。
これを890890で割った余りは450450です。

入力例5
12345678 9012345 9699690
8
2 3 5 7 11 13 17 19
1 1 1 1 1 1 1 1
出力例5
0

(123456789012345)7.5152×103127231\binom{12345678}{9012345} ≈ 7.5152 × 10^{3127231}です。
これを96996909699690で割った余りは00です。
本問題では、Ei=1E_i = 1が保証される点に注意してください。

Submit


Go (1.21)