## 题目描述

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

## 解法一

### Python

class Solution(object):
def convertToBase7(self, num):
"""
:type num: int
:rtype: str
"""
if num == 0:
return str(num)
sign = 1 if num >= 0 else -1
num = abs(num)
result = ''
while num:
result = str(num % 7) + result
num //= 7
return ('-' if sign < 0 else '') + result

### Java

public class Solution {
public String convertToBase7(int num) {
if (num == 0) {
return "0";
}
int sign = num >= 0 ? 1 : -1;
num = Math.abs(num);
StringBuilder builder = new StringBuilder();
while (num != 0) {
builder.append(num % 7);
num /= 7;
}
if (sign < 0) {
builder.append('-');
}
return builder.reverse().toString();
}
}

### C++

class Solution {
public:
string convertToBase7(int num) {
if (num == 0) {
return "0";
}
int sign = num >= 0 ? 1 : -1;
num = abs(num);
string result = "";
while (num != 0) {
result = to_string(num % 7) + result;
num /= 7;
}

return (sign < 0 ? "-" : "") + result;
}
};