提交时间:2026-06-17 06:54:53
运行 ID: 91828
#include <iostream> using namespace std; int main() { int k, N; cin >> k >> N; int ans = 0; // 结果可能较大,用long long更安全 int power = 1; // 代表 k^0, k^1, k^2... while (N > 0) { // 如果二进制最后一位是1,就加上当前的k幂 if (N % 2 == 1) { ans += power; } // N右移一位(除以2) N /= 2; // 幂次升高 power *= k; } cout << ans << endl; return 0; }