Tag Archives: 进制转换

LeetCode Base 7

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。]]>