POJ 1218 THE DRUNK JAILER(类开灯问题,完全平方数)

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2188

题目大意:n为5-100之间的一个数,代表有多少间牢房,刚开始所有房间打开,第一轮2的倍数的房间(打开的关上,关上的打开),第二轮3的倍数,第四轮4的倍数......n轮,最后有几间牢房打开的 。

解题思路:开灯问题,跟HDU 2053差不多,只要牢房编号是完全平方数,那囚犯就可以逃出去。这里有解释:http://www.cnblogs.com/fu3638/p/7507239.html

     sqrt(n)就是n之内(包括n)的完全平方数个数。

代码:

 #include<cstdio>
#include<cmath> int main(){
int t;
scanf("%d",&t);
while(t--){
int x;
scanf("%d",&x);
int ans=sqrt(x*1.0);
printf("%d\n",ans);
}
}
上一篇:2076. The Drunk Jailer


下一篇:关于verilog中if与case语句不完整产生锁存器的问题 分类: FPGA 2014-11-08 17:39 260人阅读 评论(0) 收藏