相加
string add(string a,string b)
if(first!="0")
res=first+res; //如果進製還有則新增
if(res[0]=='0' && res.size()>1) //去除前導0
res.erase(res.begin());
return res;
}
相乘
string mul(string a,string b)
if(first!="0")
if(res[0]=='0' && res.size()>1)
res.erase(res.begin()); //除去前導0
return res;
} //否則則把b拆分為一位
string res="0";
string zero="";
for(int i=b.size()-1; i>=0; i--)
return res;
}
整數轉string
string inttostring(int m)
if(res=="")
res="0";
return res;
}
較大的值
string smax(string a,string b)
時間複雜度比較高是個問題
考慮用long long拼接
struct int128 ;
int128 max(int128 a,int128 b)
int128 operator + (int128 a,int128 b)
int128 operator * (int128 a,int b)
C 大數模板
include include include using namespace std define maxn 9999 define maxsize 1010 define dlen 4 class bignum bignum const long long 將乙個int型別的變數轉化成大數 bi...
大數模板(c )
大數乘以整型數 string sum string s1,string s2 return s1 大數乘以整型數 string except string s,int x 大數除以整形數 else return ans 大數除以整型數 string except string s,int x 大數除...
C 大數模板
分別使用c 中的運算子過載的方法來實現大數之間的數 算,包括加法 減法 乘法 除法 n次方 取模 大小比較 賦值以及輸入流 輸出流的過載。並且使用這個大數模板,順利ac了hdoj上的1134這個題目的catalan數計數問題。大數模板的 如下 include include include incl...