acm 关于高精度算法的教训
来源:互联网 发布:淘宝网手机版支付宝 编辑:程序博客网 时间:2024/06/10 03:41
最近刚开始看了几道acm的题,其中有几道是关于高精度算法的,经过多次百度,知道了算法的思路,但是在解题的过程中还是有很多小错误值得引起自己的注意
首先附上代码吧
#include<stdio.h>#include<string.h>#define N 1010int main(void) {char num1[N],num2[N];int length1,length2,c,k,i;while(scanf("%s%s",num1,num2) == 2) {int a[N] = {0},b[N] = {0};length1 = strlen(num1);length2 = strlen(num2);if(length1 < length2) {k = length2;}else {k = length1;}c = k;for(i=0; i<length1; k--,i++) {a[k] = num1[length1 - 1 - i] - '0';}for(i=0,k=c; i<length2; k--,i++) {b[k] = num2[length2 - 1 - i] - '0';}for(i=c; i>0; i--) {a[i] += b[i];if(a[i]>=10) {a[i] -= 10;a[i-1]++;}}if(a[0] != 0) {for(i=0; i<=c; i++) {printf("%d",a[i]);}}else {for(i=1; i<=c; i++) {printf("%d",a[i]);}}printf("\n");}return 0;}这个是正确的代码,
1有几次在做的时候,忘记了初始化a和b数组,使得计算的的结果不争取
2,就是在while循环中,没有注意到a和b数组的初始化,因为经过一次while循环后a和b数组初值已经不是0了,所以初始化要在while循环中尽心;
以上两点是做题中的容易错的地方,总结如上。
- acm 关于高精度算法的教训
- 北大ACM 1001,关于高精度数的一些想法:
- ACM常用算法-大数四则,高精度(Java)
- 关于CSS的几个教训
- 整理的高精度算法
- 基本的高精度算法
- 高精度之关于高精度的其他问题
- ACM日记_17.3.14——高精度算法
- 关于使用a标签的教训
- 关于写文件的一个教训
- 关于python中文乱码,项目的教训
- 一个关于rm -rf 的教训
- 关于安装操作系统以后“血的教训”
- tyvj 1933 关于 复杂度 的教训~
- 关于setTimeout()得到的教训
- 关于django model_set 的惨痛教训
- 高精度除法的快速算法
- ACM高精度运算
- 第十四周 任务二
- Hibernate 拦截器
- 文件目录操作命令
- javascript控制页面元素的显示与隐藏
- 图案解锁源码,
- acm 关于高精度算法的教训
- SQL语句效率
- snd_kcontrol探究
- 有感于腾讯的GDOC
- html 空格问题
- 使用CStdioFile操作文件
- 安装nginx、php、mysql、MogileFS等需要安装的依赖库和工具包
- 优化JVM参数提升Eclipse运行速度
- 快速排序C语言实现