#include #include #include #include #include #include #include #include #include typedef long long ll; #define fi first #define se second const ll mod = 1000000007; // 123456789 using namespace std; /////////////////////////////////////////////// // // /////////////////////////////////////////////// //////////////////////////////////////////////// //////////////////////////////////////////////// queue Q; int cost[11234]; int N; int main(){ fill(cost, cost+11234, mod); cost[1] = 1; Q.push( 1 ); cin>>N; int ans; int num; int next; int flag = 0; int j[2] = { 1, -1 }; int i; if( N > 1 ){ while( !Q.empty() ){ num = Q.front(); for( i = 0; i < 2; i++ ){ next = num + (j[i]*bitset<32>(num).count()); //cout<(num).count()<