#include #include using namespace std; int n; int x[10000],ans[10000]; int main(){ cin>>n; for(int i=1;i<=n;i++){ for(int j=0;j<14;j++){ x[i]+=(i>>j)%2; } } ans[1]=1; queue q; q.push(1); while(q.size()){ int now=q.front(); q.pop(); int a=now-x[now],b=now+x[now]; if(1<=a&&ans[a]==0){ ans[a]=ans[now]+1; q.push(a); }if(b<=n&&ans[b]==0){ ans[b]=ans[now]+1; q.push(b); } } if(ans[n]==0)cout<<-1<