算法的重要性,我就不多说了吧,想去大厂,就必须要经过基础知识和业务逻辑面试+算法面试。所以,为了提高大家的算法能力,这个公众号后续每天带大家做一道算法题,题目就从LeetCode上面选 !
今天和大家聊的问题叫做 七进制数,我们先来看题面:
https://leetcode-cn.com/problems/base-7/
Given an integer
num
, return a string of its base 7 representation.
给定一个整数 num,将其转化为 7 进制,并以字符串形式输出。
示例
示例 1:
输入: num = 100
输出: "202"
示例 2:
输入: num = -7
输出: "-10"
解题
https://cloud.tencent.com/developer/article/1660153
所以(185)10 =(271)8 。除以N,留下余数,所有余数逆序即是答案
class Solution {
public:
string convertToBase7(int num) {
if(num == 0)
return "0";
bool negative = (num < 0);
num = abs(num);
string ans;
while(num)
{
ans.append(to_string(num%7));//余数
num /= 7;
}
if(negative)
ans.push_back('-');
reverse(ans.begin(), ans.end());//逆序
return ans;
}
};
好了,今天的文章就到这里,如果觉得有所收获,请顺手点个在看或者转发吧,你们的支持是我最大的动力 。
上期推文: