func convertToBase7(num int) string {
if num == 0 {
return "0"
}
sign := num < 0
if sign {
num = -num
}
var res []byte
var reverse func(digits []byte)
reverse = func(digits []byte) {
i, j := 0, len(digits)-1
for i < j {
digits[i], digits[j] = digits[j], digits[i]
i++
j--
}
}
for num > 0 {
res = append(res, byte(num%7)+'0')
num /= 7
}
if sign {
res = append(res, '-')
}
reverse(res)
return string(res)
}