Lang:G++
Edit12345678910111213141516171819202122232425262728293031#include<iostream>using namespace std;#define LINT long longint getTime(LINT N, LINT Q){LINT T = 0;LINT S = 1;LINT M = 1000000;while(S < N){T += 1;S *= 2;}LINT WT = T;for(LINT i=0; i<=T; i++){LINT w = (N/S*S < N) + N/S + WT*Q;M = w < M?w:M;S /= 2;WT -= 1;}return M;}int main(){LINT N, Q;cin >> N >> Q;cout << getTime(N, Q) << endl;return 0;}