Run ID 作者 问题 语言 测评结果 分数 时间 内存 代码长度 提交时间
169146 黄*琦 高精度乘法 C++ 解答错误 90 2 MS 284 KB 573 2024-08-20 15:20:05

Tests(27/30):


#include<bits/stdc++.h> using namespace std; char ca[5005],cb[5005]; int a[5005],b[5005],c[15005]; int main(){ cin>>ca>>cb; int lena=strlen(ca),lenb=strlen(cb); for(int i=0;i<lena;i++) a[lena-i-1]=ca[i]-'0'; for(int i=0;i<lenb;i++) b[lenb-i-1]=cb[i]-'0'; int k=0,lenc=1; for(int i=0;i<lena;i++,k++){ int s=k; for(int j=0;j<lenb;j++,s++){ c[s]+=a[i]*b[j]; } } for(int i=0;i<lenc;i++){ c[i+1]+=c[i]/10; c[i]%=10; if(c[lenc]) lenc++; } while(lenc>1 && c[lenc-1]==0) lenc--; for(int i=lenc-1;i>=0;i--) cout<<c[i]; return 0; }


测评信息: