#include using namespace std; int Ichizero(int ten) { int two = 0; while (ten > 0) { if (ten % 2 == 1) two++; ten /= 2; } return two; } int main() { int nowplace = 1; int move; int cnt = 1; int N; cin >> N; while (true) { //cout << nowplace << endl; cnt++; move = Ichizero(nowplace); if (nowplace + move <= N) { if (nowplace - move + Ichizero(nowplace - move) == N) { nowplace -= move; } else { nowplace += move; } } else if (nowplace - move >= 1) { nowplace -= move; } else { cnt = -1; break; } if (cnt >= 100000) { cnt = -1; break; } if (nowplace == N) { break; } } cout << cnt << endl; }