1. 程式人生 > >n的階乘取餘

n的階乘取餘

例:
輸入N和P(P為質數),求N! Mod P = ? (Mod 就是求模 %)
例如:n = 10, P = 11,10! = 3628800
3628800 % 11 = 10
Input
兩個數N,P,中間用空格隔開。(N < 10000, P < 10^9)
Output
輸出N! mod P的結果。
Sample Input
10 11
Sample Output
10

#include<cstdio>
using namespace std;

typedef long long ll;
ll factorial_mod(ll n,ll mod){
    ll res = 1
; for(ll i = 1;i<=n;i++){ res *= i%mod; res = res % mod; } return res; } int main(){ ll n,mod; scanf("%lld%lld",&n,&mod); ll ans = factorial_mod(n,mod); printf("%lld\n",ans); return 0; }