2016.12.17 2016年第四届湘潭大学新生趣味程序设计竞赛 F:Finally,Which light is on?

来源:互联网 发布:电脑编程技巧和维护 编辑:程序博客网 时间:2024/05/16 03:35

Finally, which light is on?

题目描述

有n盏灯,编号1~n。一开始灯都是关着的,每个灯有一个开关,按奇数次为打开,按偶数次为关闭。我们先把编号为1的倍数的灯按一下开关,再把编号为2的倍数的灯按一下开关,依次下去,一直到把编号为n的倍数灯按一下,请问最后有多少盏灯是亮的?

lamp

输入

第一行是一个整数T(1T10000),表示样例的个数。以后的每行一个样例,为一个整数n(1n109)

输出

每行输出一个样例的结果。

样例输入

215

样例输出

12

样例解释

第2个样例,先把1~5都打开;然后把2,4关掉;然后把3关掉;然后把4打开;然后把5关掉;所以,最后剩1和4是亮着的。

分析:规律题

按规律下去可以看出来,亮着的为sqrt(n)盏灯,很简单的。

---over---thisis my love---小碗豆

上代码:

#include <iostream>#include <cstdio>#include <cmath>using namespace std;int main(){int n;int T;scanf("%d",&T);while(T--){scanf("%d",&n);int ans=sqrt(n+0.0);printf("%d\n",ans);}return 0;}


0 0
原创粉丝点击