题解 | 36进制加法
36进制加法
https://www.nowcoder.com/practice/c5db069fd9d64e6e9cf5fd68860abcdd
class Solution {
public:
/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
*
*
* @param A string字符串
* @param B string字符串
* @return string字符串
*/
string thirtysixAdd(string A, string B) {
// write code here
string s = "0123456789abcdefghijklmnopqrstuvwxyz";
int i = A.size() - 1;
int j = B.size() - 1;
int jin = 0;
string res;
while (i >= 0 || j >= 0 || jin >0) {
int a = (i >= 0) ? s.find(A[i--]) : 0;
int b = (j >= 0) ? s.find(B[j--]) : 0;
int sum = a + b + jin;
res.push_back( s[sum % 36]);
jin = sum/36;
}
reverse(res.begin(), res.end());
return res;
}
};
查看15道真题和解析