Welcome to Subscribe On Youtube

504. Base 7

Description

Given an integer num, return a string of its base 7 representation.

 

Example 1:

Input: num = 100
Output: "202"

Example 2:

Input: num = -7
Output: "-10"

 

Constraints:

  • -107 <= num <= 107

Solutions

  • class Solution {
        public String convertToBase7(int num) {
            if (num == 0) {
                return "0";
            }
            if (num < 0) {
                return "-" + convertToBase7(-num);
            }
            StringBuilder sb = new StringBuilder();
            while (num != 0) {
                sb.append(num % 7);
                num /= 7;
            }
            return sb.reverse().toString();
        }
    }
    
    
  • class Solution {
    public:
        string convertToBase7(int num) {
            if (num == 0) return "0";
            if (num < 0) return "-" + convertToBase7(-num);
            string ans = "";
            while (num) {
                ans = to_string(num % 7) + ans;
                num /= 7;
            }
            return ans;
        }
    };
    
  • class Solution:
        def convertToBase7(self, num: int) -> str:
            if num == 0:
                return '0'
            if num < 0:
                return '-' + self.convertToBase7(-num)
            ans = []
            while num:
                ans.append(str(num % 7))
                num //= 7
            return ''.join(ans[::-1])
    
    
  • func convertToBase7(num int) string {
    	if num == 0 {
    		return "0"
    	}
    	if num < 0 {
    		return "-" + convertToBase7(-num)
    	}
    	ans := []byte{}
    	for num != 0 {
    		ans = append([]byte{'0' + byte(num%7)}, ans...)
    		num /= 7
    	}
    	return string(ans)
    }
    
  • function convertToBase7(num: number): string {
        if (num == 0) {
            return '0';
        }
        let res = '';
        const isMinus = num < 0;
        if (isMinus) {
            num = -num;
        }
        while (num != 0) {
            const r = num % 7;
            res = r + res;
            num = (num - r) / 7;
        }
        return isMinus ? '-' + res : res;
    }
    
    
  • impl Solution {
        pub fn convert_to_base7(mut num: i32) -> String {
            if num == 0 {
                return String::from("0");
            }
            let mut res = String::new();
            let is_minus = num < 0;
            if is_minus {
                num = -num;
            }
            while num != 0 {
                res.push_str((num % 7).to_string().as_str());
                num /= 7;
            }
            if is_minus {
                res.push('-');
            }
            res.chars().rev().collect()
        }
    }
    
    

All Problems

All Solutions