问题 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 ;
}

随机推荐

  1. WebClient设置Expect: 100-continue

    今天使用WebClient进行post发送数据的时候.总是无响应.实在没办法了.只好用fiddler抓包看一看.自己构造请求看哪里有问题. 发现请求头加上这句话后就无响应了.Expect: 100-c ...

  2. Java 加密PDF设置密码并添加水印

    /** * Project Name:XXX * File Name:EncryptLogFile.java * Date:2016-6-12上午11:56:38 * Copyright (c) 20 ...

  3. input上传图片并显示

    html: <div id="click"><img> </div><!--照片预览的div --> <div class=& ...

  4. Mac改变系统截图存储路径

    时间:2018年9月13日 人物:同事和我 事情:看苹果秋季新品发布会,并且想要截图下来当时的新品介绍. 问题:系统的截图默认是存储在桌面,整理的时候,不是很方便. Mac截图快捷键: 截取选中区域: ...

  5. Python语法糖

    1.装饰器 ####装饰器的固定格式 ##普通版本 def timer(func): def inner(*args,**kwargs): '''执行函数之前要做的''' ret = func(*ar ...

  6. HTML基础之标签简单认识

    简介 HTML(Hyper Text Markup Language)译为"超文本标记语言",主要是通过HTML标记对网页中的文本.图片.声音等内容进行描述 HTML之所以称为超文 ...

  7. 查看系统PCI设备

    # lspci Host bridge:主板 VGA compatible controller:VGA显卡设备 Class 0403:声卡设备 USB Controller:USB接口设备 SATA ...

  8. Apache Maven(七):settings.xml

    settings.xml 文件中包含settings标签,这个标签可以配置如何去执行Maven.其中包括本地存储库位置,备用远程存储库服务器和身份验证信息等值. 有如下两个位置可能存放这setting ...

  9. js判断是否为数字

    function isNumber(value) { var patrn = /^(-)?\d+(\.\d+)?$/; if (patrn.exec(value) == null || value = ...

  10. thinkphp 3.2中依靠关联模型来关联三个表

    这里说的是用thinkphp3.2关联模型关联三个表 根据用户表查询出三个表的数据,需要两个model来配合,第一个model是根据user表来查询到班级的信息,然后第二个model是根绝banji中 ...