int A[100], B[100], C[102];//C = A + B
string add(string a, string b){
string ans;int len1 = a.length(), len2 = b.length();int len =max(len1, len2), t =0;//t表示进位for(int i =0; i < len1; i++)
A[i]= a[len1 - i -1]-'0';for(int i =0; i < len2; i++)
B[i]= b[len2 - i -1]-'0';for(int i =0; i < len; i++){int k = A[i]+ B[i]+ t;
C[i]= k %10;
t = k /10;}for(int i =0; i < len; i++){char ch = C[i]+'0';
ans = ch + ans;}if(t >0)
ans ='1'+ ans;return ans;}
n进制加法
intH(char ch){if(ch >='0'&& ch <='9')return ch -'0';elseif(ch >='a'&& ch <='z')return ch -87;}
string HEX ="0123456789abcdef";int A[100], B[100], C[100];
string add(string a, string b,int n){
string ans;int len1 = a.length(), len2 = b.length();int len =max(len1, len2), t =0;for(int i =0; i < len1; i++)
A[i]=H(a[len1 -1- i]);for(int i =0; i < len2; i++)
B[i]=H(b[len2 -1- i]);for(int i =0; i < len; i++){int k = A[i]+ B[i]+ t;
C[i]= k % n;
t = k / n;}for(int i =0; i < len; i++)
ans = HEX[C[i]]+ ans;if(t >0)
ans ='1'+ ans;return ans;}