您的位置:首页 > 其它

Poj2602 Superlong sums

2014-05-26 11:04 344 查看
题目大意:给你两个数,求和、数字长度N<=1000000

这个题目完美的告诉了我们 字符和字符串的输入输出,getchar,gets ,putchar,puts 比scanf快多了。

#include <iostream>
#include <cstring>
#include <cstdio>
#define maxn 1000500
using namespace std;

int n,len;
char a[maxn],b[maxn],c[maxn];
int cal(){
len=n;
memset(c,0,sizeof(c));
for (int i=0;i<len;i++){
c[i]+=a[i]+b[i]-'0';
if (c[i]>'9'){
c[i+1]=1;
c[i]=c[i]-10;
}
}
if (c[len]>'9'){
c[len]='1';
c[len-1]=c[len]-10;
len++;
}
return 0;
}

int main(){
while (~scanf("%d",&n)){
getchar();
for (int i=n-1;i>=0;i--){
a[i]=getchar();getchar();
b[i]=getchar();getchar();
}
cal();
for (int i=len-1;i>=0;i--){
putchar(c[i]);
}
putchar('\n');
}
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: