提交时间:2023-10-06 10:27:15
运行 ID: 105297
#include<iostream> #include<cstring> #include<cstdio> using namespace std; int main() { char a1[5005],b1[5005]; int a[5005],b[5005],c[5005],a2,b2,c2,d,e,x; bool p=1; memset(a,0,sizeof(a)); memset(b,0,sizeof(b)); memset(c,0,sizeof(c)); cin>>a1>>b1; a2=strlen(a1);b2=strlen(b1); if(a1[0]=='-') p=0; if(b1[0]=='-') if(p==1) p=0;else p=1; for(d=0;d<=a2-1;d++) a[a2-d]=a1[d]-48; for(d=0;d<=b2-1;d++) b[b2-d]=b1[d]-48; if(a1[0]=='-') a2=a2-1; if(b1[0]=='-') b2=b2-1; for(d=1;d<=a2;d++) { x=0; for(e=1;e<=b2;e++) { c[d+e-1]=a[d]*b[e]+x+c[d+e-1]; x=c[d+e-1]/10; c[d+e-1]%=10; } c[d+b2]=x; } c2=a2+b2; while(c[c2]==0&&c2>1) c2--; if(p==0) cout<<"-"; for(d=c2;d>=1;d--) cout<<c[d]; cout<<endl; return 0; }