2098 - 求余数
时间限制 : 1 秒
内存限制 : 128 MB
现在给你一个自然数n,它的位数<=10^6(注意是一百万位),现在你要做的是求出这个数除10003之后的余数。
题目输入
输入数据首先包括一个整数m(1<=n<=50),表示测试数据的个数,然后是n行数据,每一行包括一个自然数n。
题目输出
对于每个测试样例,请输出n整除10003之后的余数,每次输出占一行。
输入/输出样例
输入格式
3 4 5 465456541
输出格式
4 5 6948
C语言解答
#include <stdio.h> char metamorphosis[1000001]; int main(){ int i, remainder, n; scanf("%d", &n); while (n--){ scanf("%s", metamorphosis); remainder = 0; i = 0; while (metamorphosis[i]){ remainder = (remainder * 10 + (int)(metamorphosis[i]-'0')) % 10003; i++; } printf("%d\n", remainder); } return 0; }
C++解答
#include <stdio.h> #include <string.h> #define MAXN 1000010 char a[MAXN]; int main() { int i , n , num , len; scanf("%d",&n); while(n--) { num = 0; scanf("%s",a); len = strlen(a); for( i = 0 ; i < len ; i++) { num = (num *10 + (int)(a[i]-'0')) % 10003; } printf("%d\n",num); } return 0; }