// I SELL YOU...! #include #include #include #include #include #include #include #include #include using namespace std; using ll = long long; using P = pair; using TP = tuple; void init_io(){ cin.tie(0); ios::sync_with_stdio(false); cout << fixed << setprecision(18); } map mp; ll calc(ll h,ll a) { ll res; if (h == 0) { return 0; } auto itr = mp.find(h); if (itr == mp.end()) { res = 2 * calc(h/a, a) + 1; mp[h] = res; } else { res = itr->second; } return res; } signed main(){ init_io(); ll h, a; cin >> h >> a; cout << calc(h, a) << endl; }