题目链接:https://leetcode-cn.com/problems/sum-of-digits-in-base-k/
思路:我的思路比较单纯,就是转换成k进制然后对每一位求和即可(代码一)。当然也可以不用得到转换后的数,直接做即可(转换过程中顺便把每一位的数加了,这样就不用先得到转换后的数了)(代码二)。
上代码:
代码一:
class Solution {
public int sumBase(int n, int k) {
Integer integer = Integer.valueOf(Integer.toString(n, k));
int result = 0;
while (integer != 0) {
result += integer % 10;
integer /= 10;
}
return result;
}
}
代码二:
class Solution {
public int sumBase(int n, int k) {
int result = 0;
while (n != 0) {
result += n % k;
n /= k;
}
return result;
}
}