#include <iostream>
#include<bits/stdc++.h>
using namespace std;
int utils(int target,int c,int i){
// cout <<target<<" "<<c<<endl;
if(target>0 && c<0)
return 0;
if(c>target)
return 0;
// if(c<target)
// return 0;
// if(target>0 && c<target*-1)
// return 0;
if(c==target){
cout <<target<<" "<<c<<endl;
cout <<"Found"<<i<<endl;
return i;
}
// int l= utils(target,c-(i),i+1);
// int r=utils(target,c+i,i+1);
// return min(l,r);
int res=min(utils(target,c-(i),i+1),utils(target,c+i,i+1));
cout <<res<<endl;
return res;
// return min(1+utils(target,c-(i),i+1),1+utils(target,c+i,i+1));
}
int minsteps(int target){
int ans=utils(target,0,0);
return ans;
}
int main() {
// your code goes here
int i,j,target;
target=3;
int ans=minsteps(target);
cout <<ans<<endl;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZTxiaXRzL3N0ZGMrKy5oPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwppbnQgdXRpbHMoaW50IHRhcmdldCxpbnQgYyxpbnQgaSl7CgkvLyBjb3V0IDw8dGFyZ2V0PDwiICI8PGM8PGVuZGw7CglpZih0YXJnZXQ+MCAmJiBjPDApCglyZXR1cm4gMDsKCWlmKGM+dGFyZ2V0KQoJCXJldHVybiAwOwoJLy8gaWYoYzx0YXJnZXQpCgkvLyByZXR1cm4gMDsKCS8vIGlmKHRhcmdldD4wICYmIGM8dGFyZ2V0Ki0xKQoJLy8gcmV0dXJuIDA7CglpZihjPT10YXJnZXQpewoJCWNvdXQgPDx0YXJnZXQ8PCIgIjw8Yzw8ZW5kbDsKCQljb3V0IDw8IkZvdW5kIjw8aTw8ZW5kbDsKCQlyZXR1cm4gaTsKCX0KCS8vIGludCBsPQl1dGlscyh0YXJnZXQsYy0oaSksaSsxKTsKCS8vIGludCByPXV0aWxzKHRhcmdldCxjK2ksaSsxKTsKCS8vIHJldHVybiBtaW4obCxyKTsKCWludCByZXM9bWluKHV0aWxzKHRhcmdldCxjLShpKSxpKzEpLHV0aWxzKHRhcmdldCxjK2ksaSsxKSk7Cgljb3V0IDw8cmVzPDxlbmRsOwoJcmV0dXJuIHJlczsKCS8vIHJldHVybiBtaW4oMSt1dGlscyh0YXJnZXQsYy0oaSksaSsxKSwxK3V0aWxzKHRhcmdldCxjK2ksaSsxKSk7Cn0KaW50IG1pbnN0ZXBzKGludCB0YXJnZXQpewoJCglpbnQgYW5zPXV0aWxzKHRhcmdldCwwLDApOwoJcmV0dXJuIGFuczsKCQp9CmludCBtYWluKCkgewoJLy8geW91ciBjb2RlIGdvZXMgaGVyZQoJaW50IGksaix0YXJnZXQ7Cgl0YXJnZXQ9MzsKCWludCBhbnM9bWluc3RlcHModGFyZ2V0KTsKCWNvdXQgPDxhbnM8PGVuZGw7CglyZXR1cm4gMDsKfQ==