Cho số n (cơ số 10) và cơ số k. Chuyển n sang cơ số k, tính tổng các chữ số (mỗi chữ số coi như số thập phân).
Ví dụ: n = 985, k = 8. 985 ở cơ số 8 là 1731 → tổng chữ số = 1+7+3+1 = 12.
Thuật toán giải quyết
- ans := 0.
- Khi n ≥ k:
- ans += n % k (lấy chữ số cuối).
- n = n // k (bỏ chữ số cuối).
- ans += n (chữ số còn lại).
- Trả về ans.
Ví dụ triển khai
def solve(n, k):
ans = 0
while n >= k:
ans = ans + n % k
n = n // k
ans = ans + n
return ans
n = 985
k = 8
print(solve(n, k))Đầu vào
985,8
Đầu ra
12