ZhouJiangyue @ 2022-07-27 15:07:53
#include<bits/stdc++.h>
using namespace std;
int main(){
string a,b;
cin>>a>>b;
if(a=="0"||b=="0"){
cout<<0;
return 0;
}
int len=a.size()+b.size()+1,c[len]={0};
if(a.size()<b.size())swap(a,b);
for(int i=1;i<=b.size();i++){
for(int j=1;j<=a.size();j++){
c[i+j]+=(b[b.size()-i]-'0')*(a[a.size()-j]-'0');
}
}
for(int i=2;i<len;i++){
c[i+1]+=c[i]/10;
c[i]%=10;
}
if(c[len]==0)len--;
for(int i=len;i>=2;i--)cout<<c[i];
return 0;
}
第四个点答案和我输出的结果一样,为什么是错的???
by ZhouJiangyue @ 2022-07-27 15:44:42
@御坂10029号 @ERICYIN 谢谢
by 御坂10029号 @ 2022-07-27 15:44:57
@ZhouJiangyue 把
int len=a.size()+b.size()+1,c[len]={0};
改成
int len=a.size()+b.size()+1,c[len+1]={0};
就行了
by ZhouJiangyue @ 2022-07-27 15:50:56
@御坂10029号 过了,谢谢
by ERICYIN @ 2022-07-27 15:55:08
@御坂10029号 这位的介绍有点__(请自由发挥)
by ZhouJiangyue @ 2022-07-27 16:11:52
@ERICYIN 简洁明了NB 呵呵
by ERICYIN @ 2022-07-27 17:23:40
@ZhouJiangyue 谢谢