HDU-1212.BigNumber(有关模数的定理)

  本题大意:给出一个1000位以内的大数和一个小数,让你计算并给出大数对小数取余的结果。

  本题思路:由下面的公式可以推出本题的计算公式,套入即可解决,建议自己把这个公式推一下,很简单的...

  

  参考代码:

 1 #include <cstdio>
 2 #include <cstring>
 3 using namespace std;
 4 
 5 const int maxn = 1000 + 5;
 6 int b, len, ans;
 7 char a[maxn];
 8 
 9 int main () {
10     while(~scanf("%s %d", a, &b)) {
11         len = strlen(a), ans = 0;
12         for(int i = 0; i < len; i ++) {
13             ans = (((ans * (10 % b)) % b) + (a[i] - '0') % b) % b;
14         }
15         printf("%d\n", ans);
16     }
17     return 0;
18 }
View Code

 

posted @ 2019-03-10 02:38  Cruel_King  阅读(251)  评论(0编辑  收藏  举报