HDU 1212 Big Number(大数取模)
2015-10-07 21:42
381 查看
Big Number
Problem DescriptionAs 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
Sample Output
2 5 1521
【思路分析】
用了大数取模最基本的方法——按位取模。
代码如下:
#include <iostream> #include <cstdio> #include <cstdlib> #include <cstring> #include <cmath> #include <algorithm> using namespace std; const int maxn = 100005; int mod,len,ans; char s[maxn]; void init() { len = strlen(s); ans = 0; } void solve() { for(int i = 0;i < len;i++) { ans = (ans * 10 + (s[i] - '0') % mod) % mod; } printf("%d\n",ans); } int main() { while(scanf("%s%d",s,&mod) != EOF) { init(); solve(); } return 0; }
相关文章推荐
- 数据库的建立
- 匿名函数
- HDU 3966 Aragorn's Story(树剖-点)
- Git 配置
- [经典进程同步问题]哲学家思考
- Java基础知识强化之网络编程笔记05:UDP之多线程实现聊天室案例
- 双目视觉学习总结(3)——立体匹配
- C#学习之多线程开发技术(十二)
- 13种排序算法详解(相当清楚,还附有flash动画)
- windows程序内部运行原理
- POJ 1200 字符串哈希
- 如何远程格式化迅雷宝硬盘
- 数据结构之自建算法库——广义表
- Linux驱动之虚拟网卡
- Android Menu
- 用CSS来画圆
- MySQL设计与开发规范
- 结对项目博客-四则运算题目生成程序的改进与分析
- 面试题——Cookie和Session的区别
- 老毛桃 win7