*20分求助!

P1303 A*B Problem

zfznbnb @ 2021-12-18 23:05:45


#include<bits/stdc++.h>
using namespace std;
int a[2000],b[2000],c[4000],lena,lenb,lenc,i,j,x;
int main(){
    char a1[2000],b1[2000];
    cin>>a1;
    cin>>b1;
    lena=strlen(a1);
    lenb=strlen(b1);
    for(i=0;i<=lena-1;i++)
        a[lena-i]=a1[i]-'0';
    for(i=0;i<=lenb-1;i++)
        b[lenb-i]=b1[i]-'0';
    lenc=0;
    for(i=1;i<=lena;i++){
        x=0;
        for(j=1;j<=lenb;j++){
            c[i+j-1]=a[i]*b[j]+x;
            x=c[i+j-1]/10;
            c[i+j-1]%=10;
            lenc++;
        }
    }
    while(c[lenc]==0&&lenc>1)lenc--;
    for(i=lenc;i>=1;i--)cout<<c[i];
    return 0;
}

|