Formatted question description: https://leetcode.ca/all/1837.html

1837. Sum of Digits in Base K

Level

Easy

Description

Given an integer n (in base 10) and a base k, return the sum of the digits of n after converting n from base 10 to base k.

After converting, each digit should be interpreted as a base 10 number, and the sum should be returned in base 10.

Example 1:

Input: n = 34, k = 6

Output: 9

Explanation: 34 (base 10) expressed in base 6 is 54. 5 + 4 = 9.

Example 2:

Input: n = 10, k = 10

Output: 1

Explanation: n is already in base 10. 1 + 0 = 1.

Constraints:

  • 1 <= n <= 100
  • 2 <= k <= 10

Solution

Convert n into a base k number and calculate the sum of digits. Each time get a digit and add the digit to the sum. Finally, return the sum.

class Solution {
    public int sumBase(int n, int k) {
        int sum = 0;
        while (n > 0) {
            int remainder = n % k;
            sum += remainder;
            n /= k;
        }
        return sum;
    }
}

All Problems

All Solutions