1837-K 进制表示下的各位数字总和
给你一个整数 n
(10
进制)和一个基数 k
,请你将 n
从 10
进制表示转换为 k
进制表示,计算并返回转换后各位数字的
总和 。
转换后,各位数字应当视作是 10
进制数字,且它们的总和也应当按 10
进制表示返回。
示例 1:
**输入:** n = 34, k = 6
**输出:** 9
**解释:** 34 (10 进制) 在 6 进制下表示为 54 。5 + 4 = 9 。
示例 2:
**输入:** n = 10, k = 10
**输出:** 1
**解释:** n 本身就是 10 进制。 1 + 0 = 1 。
提示:
1 <= n <= 100
2 <= k <= 10
方法一:模拟
提示 1
模拟进制转换的过程。
提示 2
事实上,我们并不需要显式求出进制转换后的结果。
思路与算法
在将 10 进制的数转换为 k 进制的过程中,我们只需要用 res 维护各位数字之和即可。
代码
1 | class Solution { |
1 | class Solution: |
复杂度分析
时间复杂度:O(\log n),循环的次数与 n 在 k 进制下的位数相同。
空间复杂度:O(1)。
Comments