HDOJ 1212 Big Number【同余定理】
2016-07-18 16:41
369 查看
Big Number
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 7156 Accepted Submission(s): 4938
[align=left]Problem Description[/align]
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.
[align=left]Input[/align]
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.
[align=left]Output[/align]
For each test case, you have to ouput the result of A mod B.
[align=left]Sample Input[/align]
2 3
12 7
152455856554521 3250
[align=left]Sample Output[/align]
2
5
1521
[align=left]Author[/align]
Ignatius.L
[align=left]Source[/align]
杭电ACM省赛集训队选拔赛之热身赛
标准的同余定理!!
就是:(a*b)mod c = a mod c * b mod c
(a+b)mod c = a mod c+ b mod c
写题的时候脑梗塞,一时间没想起来……虽然这题如此标准……
代码贴上,所有类似的题都是这个套路。
#include<stdio.h>
#include<string.h>
char a[111];
int main()
{
int b,i;
while(~scanf("%s%d",a,&b))
{
int l=strlen(a);
int sum=0;
for(i=0;i<l;i++)
sum=((sum*10)%b+(a[i]-'0')%b)%b;
printf("%d\n",sum);
}
return 0;
}
相关文章推荐
- Gradle build-info.xml not found for module app.Please make sure that you are using gradle plugin '2.0.0-alpha4' or higher.
- <java编程思想>(thing in java) 阅读笔记(第十六章至第二十一章)
- 如果SM30出现“不可修改”提示的解决方案之一
- java webservice 解决部分中文乱码问题
- Semaphores in Java
- 算法专题:DP(1)
- binary tree preorder traversal(二叉树先序遍历非递归)java
- 发现一个很棒的网站,技术 + 音乐 + 其他一切
- 【杭电oj】1443 - Joseph(模拟,打表)
- 对Linux 网卡软中断做负载均衡
- 【iOS开发】IMP指针的作用
- Linux svn服务器端搭建过程
- codeforces 358D. Alyona and Strings (dp)
- Java数据类型中String、Integer、int相互间的转换
- Python的__getattr__和__getattribute__
- subline 的常用命令
- EventBus3.0使用
- Ubuntu Update-rc.d命令详细介绍
- redis底层数据结构之dict 字典2
- 通过反射调用setter及getter方法