1017. A除以B (20)(大数向除)
2016-08-17 20:39
369 查看
1017. A除以B (20)
时间限制100 ms
内存限制
65536 kB
代码长度限制
8000 B
判题程序
Standard
作者
CHEN, Yue
本题要求计算A/B,其中A是不超过1000位的正整数,B是1位正整数。你需要输出商数Q和余数R,使得A = B * Q + R成立。
输入格式:
输入在1行中依次给出A和B,中间以1空格分隔。
输出格式:
在1行中依次输出Q和R,中间以1空格分隔。
输入样例:
123456789050987654321 7
输出样例:
17636684150141093474 3
大数向除,只可能是最简单的大数题了吧!!!
一下是代码:
#include <stdio.h> #include <string.h> #include <algorithm> using namespace std; char ch[1002]; int c[1002]; int sum[1002]; int n; int mod; void init() { int i; int len_ch = strlen(ch); for ( i = 0;i < len_ch; i++ ) { c[i] = ch[i]-'0'; } memset(sum, 0, sizeof(sum)); } void bigNumDiv() { int i; int len_ch = strlen(ch); mod = 0; for ( i = 0; i < len_ch; i++ ) { sum[i] = (mod*10+ c[i])/n; mod = (mod*10+ c[i])%n; } } int main() { int i; scanf ( "%s", ch ); scanf ( "%d", &n ); init(); bigNumDiv(); int len_ch = strlen(ch); for ( i = 0;i < len_ch-1; i++ ) { if ( sum[i] != 0 ) break; } for( i; i < len_ch; i++ ) { printf ( "%d", sum[i] ); } printf ( " %d\n", mod ); }
代码菜鸟,如有错误,请多包涵!!!
如果有帮助记得鼓励我一下,谢谢!!!
相关文章推荐
- 监控CPU(二)
- 用反射动态建表
- UDP编程开端(发送double类型)
- 排序闲谈
- CCF——图像旋转201503-1
- dplyr 数据操作 常用函数(5)
- fzu1021
- Hdu 3666 THE MATRIX PROBLEM(差分约束)
- Java常用数据结构(一)
- noip提高组模拟Matrix
- HDU 5834 Magic boy Bi Luo with his excited tree(树形dp)
- IO流——任意访问文件流
- udp一对一通信
- 最优间隔分类器.原始/对偶优化问题.KKT.SVM对偶
- SSH梳理
- String.join()方法的使用
- Android 实时加载网络新闻
- iOS基础GIF图片的实现
- CF 219D Choosing Capital for Treeland (树形dp)
- 给定产生1-5的随机数,求1-7的随机数函数