#include using namespace std; mt19937 mt(chrono::steady_clock::now().time_since_epoch().count()); #define int long long #define pb push_back #define fi first #define se second //#define endl '\n' typedef pair pii; const int K = 20; int qb(int x) { return __builtin_popcountll(x); }; pii dp[K+1][1LL<= 0;i--) { if(i+(k+qb(i))<(1LL<> n; pii cur = {1, 1}; while(cur.fi>>K!=n>>K) { int i = qb(cur.fi>>K), j = (cur.fi%(1LL<