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].
class Solution {
public:
string convertToBase7(int num) {
if (num == 0) return "0";
vector<char> vc;
if (num < 0) {
vc = convertToBase7Ex(-num);
vc.push_back('-');
}
else {
vc = convertToBase7Ex(num);
}
string s;
for(auto it = vc.rbegin(); it != vc.rend(); it++)
{
s.append(1, *it);
}
return s;
}
vector<char> convertToBase7Ex(int num)
{
vector<char> vc;
int b;
while (num > 0) {
b = num % 7;
num = num / 7;
vc.push_back('0' + b);
}
return vc;
}
};