博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
HDOJ 1002 大数加法
阅读量:7237 次
发布时间:2019-06-29

本文共 1274 字,大约阅读时间需要 4 分钟。

纯粹考操作。

我用到了<algorithm>中的reverse函数。

#include 
#include
using namespace std;const int LEN = 1005;char a[LEN],b[LEN],sum[LEN];void Init(){ for (int i = 0;i < LEN;i ++) a[i] = b[i] = sum[i] = 0;}void getSum(){ int len = max(strlen(a),strlen(b)); int i; for (i = 0;i < len;i ++) { if (a[i] != 0 && b[i] != 0) sum[i] = a[i] + b[i] - '0'; else if (a[i] != 0) sum[i] = a[i]; else sum[i] = b[i]; } for (i = 0;i < len;i ++) { if (sum[i] > '9') { if (i == (len - 1)) sum[i + 1] = (sum[i] - '0') / 10 + '0'; else sum[i + 1] += (sum[i] - '0') / 10; sum[i] = (sum[i] - '0') % 10 + '0'; } }}int main (){ int caseNum; scanf("%d",&caseNum); for (int i = 1;i <= caseNum;i ++) { Init(); scanf("%s%s",a,b); printf("Case %d:\n",i); printf("%s + %s = ",a,b); reverse(a,a + strlen(a)); reverse(b,b + strlen(b)); getSum(); reverse(sum,sum + strlen(sum)); printf("%s\n",sum); if (i != caseNum) printf("\n"); } return 0;}

转载于:https://www.cnblogs.com/peaceful-andy/archive/2012/08/17/2644597.html

你可能感兴趣的文章
【0】如何在电脑中使用多个python版本【python虚拟环境配置】
查看>>
前端css框架SASS使用教程(转)
查看>>
20120627小记
查看>>
语义化的HTML及其目的
查看>>
算法一回首之《括号匹配算法》
查看>>
Permissions 0664 for '/home/root/.ssh/id_rsa' are too open.
查看>>
Fiddler工具的基本功能(转)
查看>>
oracle事务(转)
查看>>
Codeforces Round #329(Div2)
查看>>
虚拟机console基础环境部署——安全加固
查看>>
NewtonSoft对象转json时,把 NULL 转 "" , 过滤 NULL, DateTime 时间类型去除 T
查看>>
数据库索引
查看>>
华为交换机常用配置命令
查看>>
PHPUnit学习02---如何管理TestCase
查看>>
[MySQL] 索引中的b树索引
查看>>
git/github常用指令、入门
查看>>
GIT的Push和Pull,强制Pull覆盖本地命令
查看>>
Spring IoC 的基本使用
查看>>
据说每个大牛、小牛都应该有自己的库——Ajax
查看>>
ODPS功能介绍之数据导入
查看>>