高精度加法 洛谷 P1601 A+B Problem(高精)
来源:互联网 发布:ubuntu qq2017安装 编辑:程序博客网 时间:2024/06/05 20:26
高精度加法 洛谷 P1601 A+B Problem(高精)
平常一般不用高精度,结果连高精度加法都不会。。
现在开始学习一下,毕竟是极其基础的东西。。。
洛谷 P1601 A+B Problem(高精)
题目背景
无
题目描述
高精度加法,x相当于a+b problem,不用考虑负数
输入输出格式
输入格式:
分两行输入a,b<=10^500
输出格式:
输出只有一行,代表A+B的值
输入输出样例
输入样例#1:
1
1
输出样例#1:
2
代码如下:
#include<cstdio>#include<iostream>#include<cmath>#include<cstring>using namespace std;char ca[501],cb[501];int a[501],b[501],c[510];int lena,lenb,lenc;void super_addition(int lena,int lenb){ lenc=max(lena,lenb); int temp=0; for (int i=0;i<lenc;i++) { if (a[i]+b[i]+temp>9) { c[i]=(a[i]+b[i]+temp)%10; temp=(a[i]+b[i]+temp)/10; } else { c[i]=a[i]+b[i]+temp; temp=0; } } if (temp!=0) { c[lenc]=temp; lenc++; } return;}int main(){ memset(a,0,sizeof(a)); cin>>ca; lena=strlen(ca); for (int i=0;i<lena;i++) { a[i]=ca[lena-1-i]-'0'; } memset(b,0,sizeof(b)); cin>>cb; lenb=strlen(cb); for (int i=0;i<lenb;i++) { b[i]=cb[lenb-1-i]-'0'; } memset(c,0,sizeof(c)); lenc=0; super_addition(lena,lenb); for (int i=lenc-1;i>=0;i--) { printf("%d",c[i]); } printf("\n"); return 0;}
0 0
- 高精度加法 洛谷 P1601 A+B Problem(高精)
- P1601 A+B Problem(高精)
- P1601 A+B Problem(高精)
- 洛谷 P1601 A+B Problem(高精)
- A + B Problem II(高精度加法)
- 高精度加法P1601
- 高精度——A+B Problem(高精)
- hdu 1002 A + B Problem II(高精度加法)
- HDU 1002 A + B Problem II (高精度加法)
- HDOJ 1002 A + B Problem II(高精度加法)
- HDOJ1002 A+B Problem II(高精度/大整数加法)
- HDU 1002 A+B Problem 高精度加法
- hdu1002 A + B Problem II(高精度加法)
- [P1601]高精加法[压位]
- HDOJ 1002 A + B Problem II //高精度加法
- NYOJ A+B Problem IV 高精度正实数加法
- hdu-1002 A + B Problem II_(高精度加法)
- hdu1753 大明A+B(高精度加法)
- Relative与Absolute组合使用
- mysql中varchar(50)最多能存多少个汉字
- 标准C++中的string类的用法总结
- SQL Server 日期和时间函数
- 数据结构 图 树 二叉树 常考知识点复习
- 高精度加法 洛谷 P1601 A+B Problem(高精)
- 舌尖上的Android Volley(二)
- Flash视频(FLV)比特率计算器
- JAVA多线程学习笔记
- 【BZOJ 1801】中国象棋
- 浅谈mysql缓存机制【转
- 32. Longest Valid Parentheses -- leetcode
- 343. Integer Break 等
- ORMLite 使用(一)