目录
一、高精度加法;
vector<int> addpro (vector<int> a,vector<int>b)
{
vector<int> c;
for(int i=0,t=0;i<a.size()||t||i<b.size();i++){
if(i<a.size()) t+=a[i];
if(i<b.size()) t+=b[i];
c.push_back(t%10);
t/=10;
}
return c;
}
二、高精度减法;
vector <int> sub (vector<int>a,vector<int>b )
{
// 默认 A>= B
// A>=0 ,B>=0
vector<int> c;
for(int i=0,t=0;i<a.size();i++)
{
t=a[i]-t;
if(i<b.size()) t=t-b[i];
c.push_back( (t+10)%10 );
if(t<0) t=1;
else t=0;
}
// 消 零 0
// 最高位是 1 并且被借了一位
// c.size()>1 防止减完只有一位时 被消掉 0;
while(c.size()>1&&c.back()==0) c.pop_back();
return c;
}