20分蒟蒻求助
查看原帖
20分蒟蒻求助
1081652
QBZ951_wc楼主2024/8/1 14:56

前导0删的有问题,0全删了,不会改了。

#include<iostream>
using namespace std;

int a1[22222],a2[22222],ans[44444];

int main(){
    string s1,s2;
    cin>>s1>>s2;
    if(s1=="0"||s2=="0"){
        cout<<0;
        return 0;
    }
    int ls1=s1.length(),ls2=s2.length();
    int mls=ls1+ls2;
    for(int i=0;i<ls1;i++)
        a1[i]=s1[i]-'0';
    for(int i=0;i<ls2;i++) 
        a2[i]=s2[i]-'0';
    for(int i=0;i<ls1;i++)
        for(int j=0;j<ls2;j++)
            ans[i+j]=a1[i]*a2[j];
    while(ans[mls]==0)
        mls--;
    for(int i=mls;i>=0;i--){
        if(ans[i]>9){
            ans[i+1]+=ans[i]/10;
            ans[i]/=10;
        }
    }
    if(ans[mls+1]!=0) cout<<ans[mls+1];
    for(int i=0;i<=mls;i++) cout<<ans[i];
    return 0;
}
2024/8/1 14:56
加载中...