#include<bits/stdc++.h>
using namespace std;
strings1,s2;
inta[130],b[130],c[130];
int lena,lenb,lenc;
int main(){
  cin>>s1>>s2; 
  //将字符串逆序存入数组
  lena=s1.size();
  lenb=s2.size();
  for(int i=0;i<lena;i++){
    a[i]=s1[lena-i-1]-'0';
  }
  for(int i=0;i<lenb;i++){
    b[i]=s2[lenb-i-1]-'0';
  }
  lenc=max(lena,lenb)+1;
  //逐位相加
  for(int i=0;i<lenc;i++){
    c[i]=a[i]+b[i];
  }
  //逐位进位
  for(int i=0;i<lenc;i++){ 
    if(c[i]>=10){
      c[i+1]+=c[i]/10;
      c[i]=c[i]%10;
    }
  }
  /去除前导零
  while(c[lenc-1]==0 && lenc>1){ 
    lenc--:
  }
  /逆序输出
  for(int i=lenc-1;i>=0;i--){
    cout<<c[i];
  }
  return 0;
}

1 条评论

  • @ 2026-8-1 11:40:54

    好多错了还有改。,而且一点意义都没有。

    • 1

    信息

    ID
    1783
    时间
    ms
    内存
    MiB
    难度
    2
    标签
    递交数
    46
    已通过
    2
    上传者