#include<bits/stdc++.h> using namespace std; //处理加减法问题,把数组看作一个计算器 char a[10101],b[10101]; int c[10101]; int main(){ scanf("%s%s",a,b); int l1=strlen(a),l2=strlen(b),wei=0; if(l1<l2)swap(a,b); l1=strlen(a),l2=strlen(b); //使a数组长度>=b数组长度 for(int i=l2-1;i>=0;i--){ c[wei++]=b[i]-48; }//一般计算加法都是从低位算起,而输入的数是正序的,需要逆转 wei=0;//用来表示合并后的位数,便于输出 for(int i=l1-1;i>=0;i--){ c[wei]+=a[i]-48; if(c[wei]>=10)c[wei]-=10,c[wei+1]++; //处理加法满十进一 wei++; } for(int i=wei;i>=0;i--){ if(i==wei&&c[wei]==0)continue; //不确定最高位是否为1,如果是0,说明位数没到这一位,不需要输出 else printf("%d",c[i]); //倒序输出 } return 0; }