题意
输入N和P(P为质数),求N! Mod P = ?
解题思路
根据 (a∗b∗c)%p=((a∗b)%p∗c)%p ,我们将两个数相乘后求余,求余的值跟下个数相乘后求余,再跟下个数相乘后求余,一直迭代下去。
参考代码
#include <iostream>
using namespace std;
typedef long long ll;
int main(){
int n,p;
while (cin>>n>>p){
ll ans=1;
while(n){
ans=(ans*n)%p;
n--;
}
cout<<ans<<endl;
}
return 0;
}