輸入
第一行有一個整數m(1<=m<=8),表示有m組測試數據;
隨後m行每行有一個自然數n。
輸出
輸出n整除10003之後的餘數,每次輸出佔一行。
樣例輸入
3
4
5
465456541
樣例輸出
4
5
6948
代碼如下:
- /*
- 同餘定理:(a+b)%c=((a%c)+(b%c))%c
- m%n舉例:
- 123 % n = ((1%n*10%n+2%n)%n*10%n+3%n)%n
(m+n)%c=(m%c+n%c)%c;
(19+4)%3=(19%3+4%3)%3;
(m*n)%c=((m%c)*(n%c))%c;
m^n%c=(m%c)^n%c;
3^11%8=(3^10 * 3^1)%8=((3^2)^5 * 3^1)%8=((8+1)^5 * 3^1)%8- */
- #include<iostream>
- #include<string>
- #include<string.h>
- #include<cstdio>
- #include<algorithm>
- using namespace std;
- int main()
- {
- //freopen("Input.txt", "r", stdin);
- int N, i, num, len;
- scanf("%d", &N);
- while(N--)
- {
- num = 0;
- char str[1000010];
- scanf("%s", str);
- len = strlen(str);
- for(i = 0; i != len; ++i)
- {
- num = (num * 10 + (int)(str[i] - '0')) % 10003;
- }
- printf("%d\n", num);
- }
- return 0;
- }