求余数
时间限制:1000 ms | 内存限制:65535 KB
难度:3
描述
现在给你一个自然数n,它的位数小于等于一百万,现在你要做的就是求出这个数除10003之后的余数
输入
第一行有一个整数m(1<=m<=8),表示有m组测试数据;
随后m行每行有一个自然数n。
输出
输出n整除10003之后的余数,每次输出占一行。
样例输入
3
4
5
465456541
样例输出
4
5
6948
算法分析:就是模拟一般的除法运算。
#include<stdio.h>
#include<string.h>
int main()
{
char ch[1000010];
int i,m,count=0,len;
scanf("%d",&m);
while(m--)
{
scanf("%s",ch);
count=0;
len=strlen(ch);
for(i=0;i<len;i++)
{
count=(count*10+(ch[i]-'0'))%10003;
}
printf("%d\n",count);
}
return 0;
}
思路详解:整型数组若是开100000,则必溢出,所以使用字符型,另外count=(count*10+(ch[i]-’0'))%10003;是对count的求余累加,等同于对这个整型数值整体求余
NYOJ 205 求余数
最新推荐文章于 2018-03-31 15:58:37 发布