题解 | #进制转换#
进制转换
https://www.nowcoder.com/practice/2cc32b88fff94d7e8fd458b8c7b25ec1
#include <iterator>
class Solution {
public:
string solve(int M, int N) {
string ans;
int flag = 1;
if(M < 0){
flag = -1;
M *= (-1);
}
if(N > 10){
while(M){
int rest = M % N;
if(rest == 10) ans += 'A';
else if(rest == 11) ans += 'B';
else if(rest == 12) ans += 'C';
else if(rest == 13) ans += 'D';
else if(rest == 14) ans += 'E';
else if(rest == 15) ans += 'F';
else {
ans += (rest + '0');
}
M = M / N;
}
}
else{
while(M){
int test = M % N;
ans += (test + '0');
M = M / N;
}
}
if(flag == (-1)) ans += '-';
reverse(ans.begin(), ans.end());
return ans;
}
};
嘉士伯公司氛围 583人发布
