题解 | #进制转换# | C++

进制转换

https://www.nowcoder.com/practice/2cc32b88fff94d7e8fd458b8c7b25ec1

#include <algorithm>
class Solution {
public:
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     * 进制转换
     * @param M int整型 给定整数
     * @param N int整型 转换到的进制
     * @return string字符串
     */
    string solve(int M, int N) {
        std::string ans;
        bool positive = true;
        if (M < 0) {
            positive = false;
            M = -M;
        }
        while (M > 0) {
            int mod = M%N;
            M/=N;
            if (mod < 10) {
                ans.push_back('0' + mod);
            } else {
                ans.push_back('A' + mod - 10);
            }
        }
        std::reverse(ans.begin(), ans.end());
        if (positive) {
            return ans;
        }
        return "-" + ans;
    }
};

全部评论

相关推荐

怎么起名字:早知道就不读书了,害得我送外卖还得扶眼镜
点赞 评论 收藏
分享
06-05 19:46
已编辑
武汉大学 后端
点赞 评论 收藏
分享
06-08 22:25
门头沟学院 Java
从零开始的转码生活:这hr不会打开手机不分青红皂白给所有人群发这句话,过一会再给所有人再发一遍,这肯定会有重复的,不管,再过一会再发一遍
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务