大数取模 模板

对于一些基本运算的大数取模:

加法       (a+b)%n=(a%n+b%n)%n

减法       (a-b)%n=(a%n-b%n+n)%n      //为什么要加n,由于a%n可能小于b%n,所以加n保证为正整数

乘法       a*b%n=(a%n*b%n)%n

这些都是大数取模的基础,大数取模模板如下:

 int mod(char str[],int c)
{
    int number[100];
    for(int i=0;i<strlen(str);i++)
     number[i]=str[i]-'0';
    int sum=0;
    for(int i=0;i<strlen(str);i++)
    {
        sum=((long long)sum*10+number[i])%c;
    }
    return sum;
}

猜你喜欢

转载自blog.csdn.net/shezjoe/article/details/81132152
今日推荐