【51nod】1008 N的阶乘 mod P - 同余定理

1008 N的阶乘 mod P

题解:

这里用到了同余定理

(a+b)%m = (a%m + b%m) % m

(a*b)%m = (a%m * b%m) % m 

#include <cstdio>
using namespace std;

long long Solve(int n, int m){
    if(n == 1)
        return 1;
    return n * Solve(n-1, m) % m;
}

int main(){
    int n, m;
    while(~scanf("%d %d", &n, &m))
        printf("%lld\n", Solve(n, m));
    return 0;
}

猜你喜欢

转载自blog.csdn.net/Zy_Ming/article/details/82019150