P2142 高精度减法
来源:互联网 发布:酒吧骰子软件 编辑:程序博客网 时间:2024/05/17 00:54
#include<cstdio>#include<iostream>#include<cstring>#include<algorithm>using namespace std;const int MAXN = 10000+10;inline int get(){char c;while((c = getchar()) < '0' || c > '9');int cnt = c - '0';while((c = getchar()) >= '0' && c <= '9') cnt = cnt * 10 + c - '0';return cnt;}struct data{int a[MAXN],len;data(int len = 1){ // 少 len = 1 memset(a,0,sizeof(a));}data operator - (const data &b){data c;c.len = max(len,b.len);for(int i = 1; i <= c.len; i++){c.a[i] += a[i] - b.a[i];if(c.a[i] < 0){c.a[i+1] --;c.a[i] += 10;}}while(c.a[c.len] == 0 && c.len > 1) c.len--; // 少 c.len >= 1 return c;}}a,b;char s1[MAXN],s2[MAXN],s3[MAXN];inline void Swap(){int len1 = strlen(s1);int len2 = strlen(s2);for(int i = 0; i < len1; i++){s3[i] = s1[i];}memset(s1,0,sizeof(s1));for(int i = 0; i < len2; i++){s1[i] = s2[i];}memset(s2,0,sizeof(s2));for(int i = 0; i < len1; i++){s2[i] = s3[i];}return;}inline void comp(){int len1 = strlen(s1);int len2 = strlen(s2);if(len1 < len2){printf("-");Swap();return;}if(len1 == len2){for(int i = 0; i < len1; i++){if(s1[i] < s2[i]){printf("-");Swap();return;}if(s1[i] > s2[i]) return;}}}int main(){/*#ifdef lwyfreopen("in.txt","r",stdin);#elsefreopen(".in","r",stdin);freopen(".out","w",stdout);#endif*/ scanf("%s %s",s1,s2);comp();a.len = strlen(s1);b.len = strlen(s2);for(int i = a.len - 1; i >= 0; i--){a.a[a.len-i] = s1[i] - '0';}for(int i = b.len - 1; i >= 0; i--){b.a[b.len-i] = s2[i] - '0';}a = a - b;for(int i = a.len; i >=1; i--){printf("%d",a.a[i]);}return 0;}
阅读全文
0 0
- 洛谷 P2142 高精度减法
- P2142 高精度减法
- P2142 高精度减法
- P2142 高精度减法
- 高精度减法
- 高精度减法
- 高精度减法
- 高精度减法
- 高精度减法
- 高精度减法
- 高精度减法
- 高精度减法
- 高精度减法
- 高精度减法
- 高精度减法
- 高精度减法
- 高精度减法
- 高精度减法
- 从Java内存分配来看equals和==比较
- (转载)正向代理与反向代理的区别
- Quartz任务调度(3)存储与持久化操作配置详细解析
- 10.10(周二)
- jstl 报错 According to TLD or attribute directive in tag file, attribute test does not accept any expr
- P2142 高精度减法
- 实验吧web题库writeup
- service+utils事务模板
- tcp与udp协议
- hadoop伪分布配置
- biblatex reference
- 二叉搜索树的第k个结点
- POJ 1716 Integer Intervals 差分约束
- Oracle的导出导入