HDU1212 Big Number 【同余定理】
阿新 • • 發佈:2017-08-11
name nsis eight posit really include pos str text
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?
Sample Output
Big Number
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 4594 Accepted Submission(s): 3175Problem 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
用到同余定理:(a+b)%c=(a%c+b%c)%c=(a+b%c)%c; 附:(a*b)%c=(a%c*b%c)%c;
#include <stdio.h> #define maxn 1002 char str[maxn]; int main() { int m, ans, i; while(scanf("%s%d", str, &m) != EOF){ ans = 0; for(i = 0; str[i]; ++i){ ans = (ans * 10 + (str[i] - '0') % m) %m; } printf("%d\n", ans); } return 0; }
HDU1212 Big Number 【同余定理】