大数取模

大数取模

时间限制: 1 Sec 内存限制: 32 MB


题目描述

现给你两个正整数A和B,请你计算A mod B。
为了使问题简单,保证B小于100000。

输入

输入包含多组测试数据。每行输入包含两个正整数A和B。A的长度不超过1000,并且0

输出

对于每一个测试样例,输出A mod B。

样例输入

2 3
12 7
152455856554521 3250

样例输出

2
5
1521

题意概括

给出一个长度不超过1000的a,求a对b取模;

解题思路

从高位开始计算取模;

代码如下

#include<stdio.h>
#include<string.h>
#include<ctype.h>
#include<math.h>
#include<algorithm>
using namespace std;

int main ()
{
    char str[1010];
    int n,m,i,j;
    while(~scanf("%s %d",str,&n)){
        m=0;
        for(i=0;str[i]!='';i++){
            m=m*10+str[i]-'0';
            m%=n;
        }
        printf("%d
",m);
    }
    return 0;
}
原文地址:https://www.cnblogs.com/lanaiwanqi/p/10445729.html