#include<bits/stdc++.h> using namespace std; string a,b; int c[250],d[250]; int e[250]; //a=20121324523523525241231313131131313131312312312312312313123121231231313123 //b=12312313131313123131313131313123213131311312312313123131232131212313212312 // a+b // //a=987 //b=8765 // 0 1 2 3 4 5 //c= 7 8 9 //d= 5 6 7 8 1 //e= // // // 012 //a 987 //c 789 // --- // c[0]=>7=a[2] // c[1]=>8=a[1] // c[2]->9=a[0] // c[i]====a[?] int main(){ cin>>a>>b;//1.输入ab for(int i=0;i<=a.size()-1;i++) c[i]=a[a.size()-1-i]-'0';//2.将a倒叙存储给c for(int i=0;i<=b.size()-1;i++) d[i]=b[b.size()-1-i]-'0';//3.将b倒叙存储给d int len=max(a.size(),b.size());//4.计算ab最长长度,存储给变量len for(int i=0;i<=len-1;i++){//5.循环将e从个位数开始算,算到len -1 e[i]=c[i]+d[i]+e[i];//三个相加 if(e[i]>9){ e[i+1]+=1; e[i]=e[i]%10;//如果e[i]>9 进位 e[i+1]+=1 自己要对10求余 15%10=5 } } if(e[len]==1) cout<<1;//判断一下len 是不是1.如果是1就打印。如果不是不管他 for(int i=len-1;i>=0;i--){//len-1打印到0 cout<<e[i]; } return 0; } /************************************************************** Problem: 1268 User: hulaoshi Language: C++ Result: Accepted Time:15 ms Memory:2080 kb ****************************************************************/