这题到底要不要压四位?

我没压都过了。
#include <iostream>
#include <cstring>
using namespace std;
int main()
{
int a[10010],b[10010],c[20020];
long int la,lb,lc;
string s;
memset(a,0,sizeof(a));
memset(b,0,sizeof(b));
memset(c,0,sizeof(c));

getline(cin,s);
la=s.size();
for(int i=la,j=0;i>0;a[++j]=s[--i]-'0');
getline(cin,s);
lb=s.size();
for(int i=lb,j=0;i>0;b[++j]=s[--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];

for(int k=1;k<lc;k++)
{
c[k+1]+=c[k]/10;
c[k]%=10;
}
for(;(c[lc]==0)&&(lc>1);lc--);
for(;lc>0;cout<<c[lc--]);
return 0;
}

0 条评论

目前还没有评论...

信息

ID
1040
难度
7
分类
高精度 点击显示
标签
(无)
递交数
16570
已通过
3173
通过率
19%
被复制
28
上传者