1. 程式人生 > >高精度模板

高精度模板

style 技術分享 blog 目前 one stream std 。。 return

好,這就是naive的高精度模板。目前只有加法。

http://www.mamicode.com/info-detail-454902.html 可以參考這個。

技術分享圖片
 1 #include <cstdio>
 2 #include <iostream>
 3 #include <algorithm>
 4 using namespace std;
 5 ///頭文件有點多。。。
 6 string add(string a,string b)
 7 {
 8     string ans="";
 9     int aa[9999],bb[9999];
10     int
la=a.size(); 11 int lb=b.size(); 12 int len=max(la,lb); 13 for(int i=0;i<la;i++) aa[la-i-1]=a[i]-0; 14 for(int i=0;i<lb;i++) bb[lb-i-1]=b[i]-0; 15 for(int i=0;i<len;i++) 16 { 17 aa[i]+=bb[i]; 18 if(aa[i]>9) 19 { 20 aa[i+1]+=aa[i]/10
; 21 aa[i]%=10; 22 if(i+1==len) len++; 23 } 24 } 25 for(int i=len-1;i>=0;i--) ans+=(aa[i]+0); 26 return ans; 27 } 28 29 int main() 30 { 31 string s1,s2; 32 cin>>s1>>s2; 33 s1=add(s1,s2); 34 cout<<s1; 35 return 0; 36 }
高精度正整數加法字符串

高精度模板