public int stick (long a) {
ArrayList<Long> list=new ArrayList<>();
list.add(1l);
list.add(1l);
long count=a-2;
while(true) {
int k=list.size()-1;
long n=list.get(k)+list.get(--k);
if(count<n)
break;
else {
list.add(n);
count-=n;
}
}
return list.size();
}