(MOD)
| 88 | |
| 89 | |
| 90 | def warm_up_fac(MOD): |
| 91 | global factorial_modP, fac_warm_up |
| 92 | if fac_warm_up: return |
| 93 | factorial_modP = [1 for _ in range(fac_warm_up_size + 1)] |
| 94 | for i in range(2, fac_warm_up_size): |
| 95 | factorial_modP[i] = (factorial_modP[i - 1] * i) % MOD |
| 96 | fac_warm_up = True |
| 97 | |
| 98 | |
| 99 | def InverseEuler(n, MOD): |