题目链接
题目类型:暴力模拟
题目来源:2016年多校Round3签到题
题目分析
题目大意
给出f(n)=(int)sqrt(n),f2(n)=f(f(n)),问,给定的数字能否在五次操作之内变为1
解析
首先先模拟一下当f(n)=1的情况,n=1,2,3。f2(n)=1的情况,n=4,5,6,7,…,15。这样大概就能发现规律了。当n<(1<<2),满足f(n)=1,当n<(1<<4),满足f(n)=2,当n<(1<<8),满足f(n)=3…所以这样就很好办了,先判断一下这个数字是否是在1<<(32)之内且大于零,然后再一个个去比较即可。
代码
1 |
|