问题 A: a+b
问题 A: a+b
时间限制: 1 Sec 内存限制: 32 MB
提交: 285 解决: 124
[提交][状态][讨论版][命题人:外部导入]
题目描述
实现一个加法器,使其能够输出a+b的值。
输入
输入包括两个数a和b,其中a和b的位数不超过1000位。
输出
可能有多组测试数据,对于每组数据,
输出a+b的值。
样例输入
6 8
2000000000 30000000000000000000
样例输出
14
30000000002000000000
#include<bits/stdc++.h> using namespace std;
const int N=1e3+;
char a[N],b[N];
struct bign
{
int s[N];
int len;
bign(){
memset(s,,sizeof(s));
len=;
}
}; bign change(char str[])
{
bign a;
a.len=strlen(str);
for(int i=;i<a.len;i++){
a.s[i]=str[a.len-i-]-'';
}
return a;
} int comm(bign a,bign b)//大数的比较
{
if(a.len>b.len) return ;
else if(a.len<b.len) return -;
else{
for(int i=a.len-;i>=;i--){
if(a.s[i]>b.s[i]) return ;
else if(a.s[i]<b.s[i]) return -;
}
}
return ;
} bign add(bign a,bign b)
{
bign c;
int carry=;
for(int i=;i<a.len||i<b.len;i++){
int temp=a.s[i]+b.s[i]+carry;
c.s[c.len++]=temp%;
carry=temp/;
}
if(carry!=) c.s[c.len++]=carry;
return c;
}
int main()
{
while(~scanf("%s %s",a,b)){
bign s1=change(a);
bign s2=change(b);
bign c=add(s1,s2);
for(int i=c.len-;i>=;i--){
printf("%d",c.s[i]);
}
printf("\n");
}
return ;
}
随机推荐
- 【luogu P3369 【模板】普通平衡树(Treap/SBT)】 模板 Scapegoat Tree
#include <cstdio> #include <cstring> #include <iostream> #include <algorithm> ...
- [luoguP1090][Noip2004]合并果子
合并果子 首先来看一下题目: (OI2004合并果子) [题目描述] 果园里,多多已经将所有的果子打了下来,而且按果子的 ...
- Tomcat+Oracle配置连接池的例子
我这有一个Tomcat+Oracle连接池的例子,放上来和大家分享一下. Tomcat +Oracle 连接池配置 Author: Kenneth.Leaf@GalaxySoft Date: / ...
- EventBus 基础篇
最近在研究RxJava ,突然想起了事件分发另一个强大的框架Eventbus ,并且项目经常用到,特意整理了下. what is Eventbus? 官方的解释为: EventBus is a pub ...
- git 指定用户名密码更新代码
使用git 更新代码 如何修改git 的密码一直令人费解,百度一堆也没给出答案.下面给一种替代方案. 例如:我们正常的代码地址 http://172.16.210.112/project/test.g ...
- jwplayer 参数记录
jwplayer().getPosition()://播放了多少秒 jwplayer('playerdiv').play(); || jwplayer(0).play(true/false); // ...
- php第四节(循环和函数)
<?php //循环有 for(){}.有while(){} 有do{}while().foreach(){}循环 //1.for(){} for($i=0;$i<=9;$i++){ ec ...
- POJ 2007--Scrambled Polygon(计算凸包,点集顺序)
Scrambled Polygon Time Limit: 1000MS Memory Limit: 30000K Total Submissions: 10094 Accepted: 476 ...
- JDK1.8的安装
[环境准备] OS版本:Windows10企业版.64位操作系统: JDK版本:jdk-8u131-windows-x64.exe [彻底卸载已安装的JDK] 01:卸载或删除JDK服务.有三种方式: ...
- angularjs Directive自定义指令详解
作用:需要用Directive有下面的情景: 1.使你的Html更具语义化,不需要深入研究代码和逻辑即可知道页面的大致逻辑. 2. 抽象一个自定义组件,在其他地方进行重用. 3.使用公共代码,减少重复 ...