蒟蒻求助

P1303 A*B Problem

Editzed @ 2021-08-21 14:37:09

带零的输出多一个零

#include<bits/stdc++.h>
using namespace std;
char s1[10086],s2[10086];
int a[10086],b[10086],c[10086];
int main()
{
    int la,lb,lc;
    cin>>s1;
    cin>>s2;
    la=strlen(s1);lb=strlen(s2);
    for(int i=0;i<la;i++)
    a[la-i]=s1[i]-'0';
    for(int i=0;i<lb;i++)
    b[lb-i]=s2[i]-'0';
    lc=la+lb;
    for(int i=1;i<=la;i++)
    for(int j=1;j<=lb;j++)
    {
    c[i+j-1]+=a[i]*b[j];
    c[i+j]+=c[i+j-1]/10;
    c[i+j-1]%=10;
    }
    if(c[lc]==0&&lc>1) lc--;
    for(int i=lc;i>=1;i--)
    cout<<c[i];
    return 0;
}

by Leonid @ 2021-08-21 14:59:17

应该是去前导零那部分出问题了


|