40分!高精度加法!大佬求助!
查看原帖
40分!高精度加法!大佬求助!
1374289
PauseView楼主2024/8/23 09:35
#include<bits/stdc++.h>
using namespace std;
int main(){
    char a[100010],b[100010];
    cin>>a>>b;
    int a1[100010],b1[100010],la=strlen(a),lb=strlen(b);
    for(int i=0;i<la;i++)a1[i]=a[la-i-1]-48;
    for(int i=0;i<lb;i++)b1[i]=b[lb-i-1]-48;
    int c1[100010],lc=max(la,lb)+1;
    int x=0;
    for(int i=0;i<lc;i++){
        c1[i]=a1[i]+b1[i]+x;
        x=c1[i]/10;
        c1[i]%=10;
    }
    int flag=0;
    for(int i=lc;i>=0;i--){
        if(flag==0 and c1[i]==0){
            continue;
        }
        if(flag==0 and c1[i]!=0){
            cout<<c1[i];
            flag=1;
        }
        else{
            cout<<c1[i];
        }
    }
    return 0;
}
2024/8/23 09:35
加载中...