大数求余
原理:
13204 mod 23
先用1去mod 23,结果为1存入num变量中, 接着挪动一位,用13去mod 23,结果为13,继续存入num变量中,继续挪动一位,用132去mod 23 得17,接下来以此类推。。。
#include<iostream>
#include<string>
#include<cstdio>
using namespace std;
const int n = 10003;
int Show(string str) {
int len = str.length(), num = 0;
//用num模拟手算
for (int i = 0; i < len; ++i) num = (num*10 + str[i]-'0') % n;
return num;
}
int main() {
int N;
string str;
cin >> N;
getchar();
while (N--) {
getline(cin, str);
cout << Show(str) << endl;
}
}
参考例题:
NYOJ 第205题