504. Base 7

来源:互联网 发布:编程原本 评价 编辑:程序博客网 时间:2024/05/29 06:43

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

给出一个数字,找出其七进制的字符串表示。
需要注意的时数字可能是负数,同时数字如果是INT_MIN应该怎么表示。。。
代码中会判断该数字是否为负数,同时直接将该数字用 long long 类型表示,这样不会存在数字是INT_MIN转换为正数时溢出的现象。

string convertToBase7(int num) {        if (num == 0)return "0";        bool flag = false;        long long temp;        ostringstream out;        if (num < 0){            flag = true;            temp = -num;        }        else temp = num;        while (temp){            out << temp % 7;            temp /= 7;        }        string str = out.str();        reverse(str.begin(), str.end());        if (flag)return '-' + str;        return str;    }
原创粉丝点击