LeetCode Base 7
Given an integer, return its base 7 string representation.
Example 1:
Input: 100
Output: "202"
Example 2:
Input: -7
Output: "-10"
Note: The input will be in range of [-1e7, 1e7].
本题要把10进制数转换为7进制数。
根据以往10进制转换为2进制的规则,使用短除法,不断的除2取余数,然后把所有余数反排就得到二进制结果了。

将10进制转换为7进制的方法也是一样,不断的除7取余,余数反排就好了。
代码如下:
[cpp]
class Solution {
public:
string convertToBase7(int num) {
if(num == 0) return "0";
int num_cp = num < 0 ? -num : num;
string ans = "";
while(num_cp != 0){
ans = to_string(num_cp % 7) + ans;
num_cp /= 7;
}
if(num < 0) return "-" + ans;
else return ans;
}
};
[/cpp]
本代码提交AC,用时3MS。]]>