问题 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. Markdown黑色背景代码高亮

    因为我默认的不是Markdown...这里分享给用Markdown的小伙伴吧. /* 使用了Monokai Sublime的黑色主题皮肤,但是还存在样式冲突,需要自己修改 这个样式只适合使用maked ...

  2. CodeForces - 348A Mafia (巧妙二分)

    传送门: http://codeforces.com/problemset/problem/348/A A. Mafia time limit per test 2 seconds memory li ...

  3. Storm 出现 no jzmq in java.library.path

    在真实环境中运行时,在log日志下,查看workpid日志发现出现该错误. 解决办法: 在conf/storm.yaml添加jzmq安装的路径, 我使用的默认安装在/usr/local/lib下 ja ...

  4. 虚拟局域网VLAN的配置实验

    实验涉及命令以及知识补充 交换机的不同状态 switch: :交换机的ROM态 rommon> :路由器的R状态 switch > :用户模式 switch# :特权模式 switch(c ...

  5. oracle-02 用户管理

    一.创建用户概述:在oracle中要创建一个新的用户使用create user语句,一般是具有dba(数据库管理员)的权限才能使用.create user 用户名 identified by 密码;  ...

  6. order by 排序

    [order by] 排序 asc 升序(从小到大),desc降序(从打到小) 语法: select  列名  from  表  where  条件  order by  列1,列2    asc或d ...

  7. rest_framework -- mixins&generics

    上面的mixins.generics都是rest_framework里的模块,我们可以继承其中的某些类,达到代码量减少的效果,这里充分体现出了面向对象的继承 一.mixins模块 mixins : f ...

  8. oracle中connect by语句的优化

    很多应用中都会有类似组织机构的表,组织机构的表又通常是典型的层次结构(没有循环节点).于是通过组织控制数据权限的时候,许多人都喜欢通过connect by获得组织信息,然后再过滤目标数据. 在有些情况 ...

  9. LeetCode 翻转链表

    基本思路 从元首节点之后每次取一个节点,并将节点接到元首节点前面 代码实现 /** * Definition for singly-linked list. * struct ListNode { * ...

  10. 发布django项目

    supervisor需要用到的技术 1. nginx反向代理 2. nginx负载均衡 3. uwsgi 4. supervisor 5. virtualenv 安装nginx 详情参考 https: ...