#include<bits/stdc++.h>
using namespace std;
char a1[1001],b1[1001];
int a[1001],b[1001],c[1001],lenc,x;
int main(){
cin>>a1>>b1;
int lena=strlen(a1);
int lenb=strlen(b1);
for(int i=0;i<lena;i++){
a[lena-i-1]=a1[i]-48;
}//反向储存
for(int i=0;i<lenb;i++){
b[lenb-i-1]=b1[i]-48;
}//反向储存
while(lenc<lena||lenc<lenb){
c[lenc]=a[lenc]+b[lenc]+x;
x=c[lenc]/10;
c[lenc]%=10;
lenc++;
}//lenc到达最长的一位
for(int i=lenc-1;i>=0;i--){
if(c[i]!=0){
break;
}//跳出循环
}
for(int i=lenc-1;i>=0;i--) cout<<c[i];//输出
return 0;
}
#include<bits/stdc++.h> using namespace std; char a1[1001],b1[1001]; int a[1001],b[1001],c[1001],lenc,x; int main(){ cin>>a1>>b1; int lena=strlen(a1); int lenb=strlen(b1); for(int i=0;i<lena;i++){ a[lena-i-1]=a1[i]-48; }//反向储存 for(int i=0;i<lenb;i++){ b[lenb-i-1]=b1[i]-48; }//反向储存 while(lenc<lena||lenc<lenb){ c[lenc]=a[lenc]+b[lenc]+x; x=c[lenc]/10; c[lenc]%=10; lenc++; }//lenc到达最长的一位 for(int i=lenc-1;i>=0;i--){ if(c[i]!=0){ break; }//跳出循环 } for(int i=lenc-1;i>=0;i--) cout<<c[i];//输出 return 0; }