大数乘

来源:互联网 发布:世界 变化 知乎 编辑:程序博客网 时间:2024/04/26 08:24
string multi(string a,string b){string c;int i,j;int t,p;int sign;size_t zero;sign=0;if(a[0]=='-'){a=a.erase(0,1);sign=sign^1;}if(b[0]=='-'){b=b.erase(0,1);sign=sign^1;}reverse(a.begin(),a.end());reverse(b.begin(),b.end());c.assign(3005,'0');for(i=0;i<b.length();i++){      //bt=0;for(j=0;j<a.length();j++){  //ap=(b[i]-48)*(a[j]-48)+t+c[i+j]-48;t=p/10;p=p%10;c[i+j]=p+'0';}c[i+j]+=t;}reverse(c.begin(),c.end());zero=c.find_first_not_of("0");if(zero!=string::npos){c=c.substr(zero);}else{c="0";}if(sign && a!="0" && b!="0") c='-'+c;return c;}


 

原创粉丝点击