AcWing 793. c++简单易懂的高精度乘法
原题链接
简单
作者:
神风游骑兵
,
2021-05-23 10:43:31
,
所有人可见
,
阅读 323
#include<iostream>
#include<vector>
#include<string>
using namespace std;
vector<int>func(vector<int>&a,int b){
int i=a.size();
vector<int>c;
int t=0;//t为进位
for(int i=0;i<a.size()||t;i++){
if(i<a.size()) t+=a[i]*b;
c.push_back(t%10);
t/=10;
}
return c;
}
int main(){
vector<int>a;
vector<int>c;
string x;
int y;
cin>>x>>y;
for(int i=x.size()-1;i>=0;i--)
a.push_back(x[i]-'0');
if(y) c= func(a,y);//y不为0
else c.push_back(0);//y为0乘积为0
for(int i=c.size()-1;i>=0;i--)
cout<<c[i];
}
这模板级补全真易懂啊。。。
哈哈😄