hdu 1212 Big Number(大数取模)

 

Problem Description
As we know, Big Number is always troublesome. But it's really important in our ACM. And today, your task is to write a program to calculate A mod B.

To make the problem easier, I promise that B will be smaller than 100000.

Is it too hard? No, I work it out in 10 minutes, and my program contains less than 25 lines.
 

 

Input
The input contains several test cases. Each test case consists of two positive integers A and B. The length of A will not exceed 1000, and B will be smaller than 100000. Process to the end of file.
 

 

Output
For each test case, you have to ouput the result of A mod B.
 

 

Sample Input
2 3 12 7 152455856554521 3250
 

 

Sample Output
2 5 1521

 

//重最高位开始不断取余,简单来说模拟手算

//比如  985%6

//   9%6=3

//  38%6=2

//  25%6=1

//计算完毕

 1 #include <iostream>
 2 
 3 using namespace std;
 4 char a[12000];
 5 int b;
 6 int mod(char *a,int b)
 7 {
 8     int ans=0;
 9     for(int i=0;a[i]!='\0';i++)
10     ans=(ans*10+a[i]-'0')%b;
11     return ans;
12 }
13 int main()
14 {
15     while(cin>>a>>b)
16     {
17         cout<<mod(a,b)<<endl;
18     }
19     return 0;
20 }

 

posted @ 2016-02-19 16:41  邻家那小孩儿  阅读(187)  评论(0编辑  收藏  举报