yu18250787255 @ 2023-01-06 00:25:16
#include <iostream>
#include <cstring>
using namespace std;
main()
{
int A[200],B[200],C[200];
memset(A,0,sizeof(A));
memset(B,0,sizeof(B));
memset(C,0,sizeof(C));
string a,b;
cin>>a>>b;
int lena=a.length(),lenb=b.length();
for(int i=0;i<=lena;i++)
{
A[i]=a[lena-i]-'0';
}
for(int i=0;i<=lenb;i++)
{
B[i]=b[lenb-i]-'0';
}
int x;
for(int i=0;i<lena;i++)
{
x=0;
for(int j=0;j<lenb;j++)
{
C[i+j]+=A[i]*B[j]+x;
x=C[i+j]/10;
C[i+j]%=10;
}
C[i+lenb]=x;
}
int zong=lena+lenb-1;
while(C[zong]==0 && zong>1)
{
zong--;
}
for(int i=zong;i>=0;i--)
{
cout<<C[i];
}
return 0;
}
by MarchKid_J0e @ 2023-01-06 07:18:26
@yu18250787255 话说学 OI
学到现在才发现 main
前面不写类型的。
bug:都是下标性质的问题,缺个
by MarchKid_Joe @ 2023-01-06 07:19:13
#include <iostream>
#include <cstring>
using namespace std;
main()
{
int A[200],B[200],C[200];
memset(A,0,sizeof(A));
memset(B,0,sizeof(B));
memset(C,0,sizeof(C));
string a,b;
cin>>a>>b;
int lena=a.length(),lenb=b.length();
for(int i=0;i<lena;i++)
{
A[i]=a[lena-i-1]-'0'; //-1
}
for(int i=0;i<lenb;i++)
{
B[i]=b[lenb-i-1]-'0'; //-1
}
int x;
for(int i=0;i<lena;i++)
{
x=0;
for(int j=0;j<lenb;j++)
{
C[i+j]+=A[i]*B[j]+x;
x=C[i+j]/10;
C[i+j]%=10;
}
C[i+lenb]=x;
}
int zong=lena+lenb;//+1
while(C[zong-1]==0 && zong>1)//-1
{
zong--;
}
for(int i=zong-1;i>=0;i--)//-1
{
cout<<C[i];
}
return 0;
}
by yu18250787255 @ 2023-01-06 10:14:03
@MarchKid_Joe 谢谢!!!问题已解决