大整数 a-b
来源:互联网 发布:淘宝获取店铺失败原因 编辑:程序博客网 时间:2024/05/17 00:15
#include <cstdio>#include <cstring>#include <iostream>#include <algorithm>using namespace std;struct sz{ //结构体定义 int d[1000];int len;sz(){ //初始化结构体 memset(d,0,sizeof(d));len =0;}};sz fun(char s[]) //将字符串转化为int型存入数组 {sz a;a.len=strlen(s);for(int i=0;i<a.len;i++){a.d[i]=s[a.len-1-i]-'0';}return a;}int cmp(sz a1,sz a2) //比较输入的两个值得大小 {if(a1.len >a2.len ) return 1;else if(a1.len <a2.len ) return -1;else{for(int i=a1.len -1;i>=0;i--){if(a1.d[i]>a2.d[i]) return 1;else if(a1.d[i]<a2.d[i]) return -1;}return 1;}}sz sub(sz a1,sz a2) //减法运算 {sz c;for(int i=0;i<a1.len ;i++){if(a1.d[i]>=a2.d[i]) c.d[c.len ++]=a1.d[i]-a2.d[i];else{a1.d[i]+=10;a1.d[i+1]--;c.d[c.len ++]=a1.d[i]-a2.d[i];}}return c;}int main(){char s1[1000], s2[1000];while(~scanf("%s %s",s1,s2)){sz a1,a2,c;a1=fun(s1);a2=fun(s2);int p=cmp(a1,a2);if(p==1){c=sub(a1,a2);}else{c=sub(a2,a1);}if(p!=1) printf("-");int i;for(i=c.len-1;i>=1;i--) //输出处理 {if(c.d[i]!=0) break; } for(i;i>=0;i--) printf("%d",c.d[i]); printf("\n");}}// 多样例输入 a+b
0 0
- 大整数 a-b
- hihoCoder #1000:A+B (大整数)题解
- HDU1002: A + B Problem II (很水的大整数)
- HDU 1002 A + B Problem II(大整数相加)
- HDU 1402 A * B Problem Plus (FFT, 大整数乘法)
- Hdu 1002 A + B Problem II(大整数加法)
- hdu1002 大大大整数加法 A + B Problem II
- HDU-1002 A + B Problem II(大整数加法)
- 1017. A除以B (20)-大整数运算
- HDU 1402 A * B Problem Plus (FFT, 大整数乘法)
- hdu 1002 A + B Problem II 大整数相加
- 1017.A除以B(大整数运算)
- A + B Problem II(大整数加法)
- HDOJ1002 A+B Problem II(高精度/大整数加法)
- 1017A除以B(大整数除法)
- A + B Problem II(大整数加法)
- hdu 1002 A + B Problem II 大整数相加
- 给出2个大整数A,B,计算A*B的结果。
- postgres修改归档模式
- python中os模块用法
- Poj1006 中国剩余定理的完美演绎
- git commit提交次数记录合并
- 仿b站demo(效果图)
- 大整数 a-b
- 反编译技术
- 你从未见过如此详细的“闭包和作用域链”
- No input file specified的解决方法
- 华为 9
- AngularJS Directive的使用
- 项目总结1——excel导出相关问题
- 一个JavaEE web servlet的进化
- Java基础之理解Annotation