讨论 / 规律自己找找,代码好好瞧瞧。
lijie201602 2017-09-14 22:40:12
点我顶贴 收藏 删除
#include<cstdio>

int a[100010],b[100010],n;

int main()

{

scanf("%d",&n);

int ans=1,k=2;

while(k!=1)

{

if(k<=n) k*=2;

else k=(k-n)*2-1;

ans++;

}

printf("%d",ans);

return 0;

}

/*

如果所在位置小于n的情况下下一次的位置就是n*2

但是如果大于n下次的位置就是(当前位置-n)*2-1

*/

查看更多回复
提交回复