Description
我叫王大锤,昨天还是一名C++老师。万万没想到,我又失业了。昨天上课前我写的程序让整个学校的电脑中了病毒。为了生计,无可奈何,在学校旁边的唐师傅理发店找了一份兼职。
唐师傅理发店已经开张十年有余,生意红火。唐币是一种专门用来唐师傅营业额的,用int以至于long long int已经无法表示唐师傅的总营业额了。而唐师傅又想要计算自开业以来的总营业额。他给了我两个账本和我的第一个任务,能不能获得这份工作,在此一举!
每个账本都已经在最后一页写上了这一时期的总营业额,设计一个程序,计算出它们的和。
Input
共2行,每行1个正整数(不超过100位),分别表示每个账本上写着的总营业额(单位:唐币)。
Output
一行,包含一个整数,表示总的营业额。
Sample Input 1
1 9
Sample Output 1
10
AC:(高精度)
#include<iostream>
#include<algorithm>
#include<cstring>
using namespace std;
int main(){
char a[500],b[500];
cin>>a>>b;
int a1[500]={0},b1[500]={0},c[500];
int la=strlen(a);
int lb=strlen(b);
for(int i=0;i<la;i++){
a1[la-i]=a[i]-48;
}for(int i=0;i<lb;i++){
b1[lb-i]=b[i]-48;
}int x=0;
for(int i=1;i<=max(la,lb);i++){
c[i]=b1[i]+a1[i]+x;
x=c[i]/10;
c[i]%=10;
}if(x==1){
cout<<x;
for(int i=max(la,lb);i>=1;i--){
cout<<c[i];
}
}else{
bool find=false;
for(int i=max(la,lb);i>=1;i--){
if(c[i]%10!=0){
find=true;
}if(find==true){
cout<<c[i];
}
}
}
}