武汉科技大学ACM :1008: 零起点学算法58——开灯问题
Problem Description
计算中心有8个机房,每个机房有n台电脑。每台电脑都有一个编号,比如8号机房编号就为H1到Hn,我们有时又称为H1为1号机器,H2为2号机器,...。
有一天我们学校跻身世界高校100强,全校所有师生都进行了狂欢庆祝。罗老师是个很爽快的人,也很喜欢喝酒,那天他喝多了点。但不巧的是那天晚上正好罗老
师值班,罗老师是个很负责的老师。所以他就把8号机房打开了。但同学们都还在狂欢,没一个人来上机。罗老师提着一瓶酒,感觉到很无聊,所以他想玩个游戏。
第一回合,他喝了一口酒,他把所有的电脑都打开。然后第二回合他喝了一口酒,他把编号是2,4,6,...的电脑全关了。第三回合,他喝一口酒后就去操作
所有编号是3,6,9,...,看到电脑开着就把它关掉,看到电脑关了就把它打开。他重复这样操作共进行了n个回合。当他操作完最后一个回合后,罗老师醉
倒了。
现在给你这个机房电脑的数目,问你最后共有几台电脑开着?
Input
多组数据测试。
输入只有1行,这行有一个正整数,表示这个机房共有多少个电脑,该数是5到100之间的任意正整数。
Output
你必须输出最后开着的电脑数。输出该数后不要忘了换行
Sample Input
5
Sample Output
2
HINT
for(i=1;i<=n;i++)//i表示回合1--n
for(k=1;k<=n;k++)//k表示电脑编号1--n
我的代码:
#include <stdio.h>
int main()
{
int n,i,j,x,sum,a[];
while(scanf("%d",&n) != EOF)
{
sum=;
if(n>= && n<=)
{
for(i=;i<=n;i++)
{
a[i]=;
}
for(i=;i<=n;i++)
{
for(j=;j<=n;j++)
{
if(j%i==)
{
if(a[j]==)
{
a[j]=;
}
else
{
a[j]=;
}
}
}
}
for(i=;i<=n;i++)
{
if(a[i]==)
{
sum++;
}
}
printf("%d\n",sum);
}
}
return ;
}
其他代码:
#include <iostream>
using namespace std; int main()
{
int n,count;
int *a = NULL;
while(cin>>n)
{
count=;
if(n> || n<)
{
return ;
}
a = new int[n+];
for(int i=;i<=n;++i)
{
a[i]=;
}
for(int i=;i<=n;++i)
{
for(int j=;j<=n;++j)
{ if(j%i==) a[j]=-a[j];
} }
for(int i=;i<=n;++i)
{
if(a[i])
{
++count;
}
}
cout<<count<<endl;
}
return ;
}
武汉科技大学ACM :1008: 零起点学算法58——开灯问题的更多相关文章
- 武汉科技大学ACM:1008: 零起点学算法64——回型矩阵
Problem Description 输出n*m的回型矩阵 Input 多组测试数据 每组输入2个整数 n和m(不大于20) Output 输出n*m的回型矩阵,要求左上角元素是1,(每个元素占2个 ...
- WUOJ-ACM :1003: 零起点学算法78——牛牛
武汉科技大学ACM :1003: 零起点学算法78--牛牛Problem Description牛牛是一种纸牌游戏,总共5张牌,规则如下: 如果找不到3张牌的点数之和是10的倍数,则为没牛: 如果其中 ...
- 1163: 零起点学算法70——Yes,I can!
1163: 零起点学算法70--Yes,I can! Time Limit: 1 Sec Memory Limit: 64 MB 64bit IO Format: %lldSubmitted: ...
- 1164: 零起点学算法71——C语言合法标识符(存在问题)
1164: 零起点学算法71——C语言合法标识符 Time Limit: 1 Sec Memory Limit: 64 MB 64bit IO Format: %lldSubmitted: 10 ...
- 1147: 零起点学算法54——Fibonacc
1147: 零起点学算法54--Fibonacc Time Limit: 1 Sec Memory Limit: 64 MB 64bit IO Format: %lldSubmitted: 20 ...
- 1145: 零起点学算法52——数组中删数II
1145: 零起点学算法52--数组中删数II Time Limit: 1 Sec Memory Limit: 64 MB 64bit IO Format: %lldSubmitted: 293 ...
- 1137: 零起点学算法44——多组测试数据输出II
1137: 零起点学算法44--多组测试数据输出II Time Limit: 1 Sec Memory Limit: 64 MB 64bit IO Format: %lldSubmitted: ...
- 1136: 零起点学算法43——多组测试数据输出I
1136: 零起点学算法43--多组测试数据输出I Time Limit: 1 Sec Memory Limit: 128 MB 64bit IO Format: %lldSubmitted: ...
- 1135: 零起点学算法42——多组测试数据(求和)IV
1135: 零起点学算法42--多组测试数据(求和)IV Time Limit: 1 Sec Memory Limit: 64 MB 64bit IO Format: %lldSubmitted ...
随机推荐
- 1.1HTML的基本概念
1.WWW有3个基本的组成部分,分别是URL(统一资源定位器),HTTP(超文本传输协议),HTML(本文本标记语言). 2.一个HTML文件是由一系列的元素和标签组成的,元素不区分大小写. 3.&l ...
- css3动画和jquery动画使用中要注意的问题
前一阵子写demo的时候遇到这样一个问题,就是给元素添加css3或者jquery动画时,在动画结束前不能准确取到元素的css属性. 1. css3动画讨论 先看代码: html: <div id ...
- JavaScript简易日历
<!DOCTYPE html PUBLIC "-//W3C//h2D XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- PHP文章管理(2)
##############index.php###################### <?session_start(); require"./inc/func.php&qu ...
- 淘宝接口实现ip归属地查询
<?php header('content-type:text/html;charset=utf-8'); /*获取当前ip归属地 调用淘宝接口 */ function get_ip_place ...
- Delphi XE7 开发ActiveX 及在IntraWeb下调试
最近学习DelphiXE7下Intraweb开发,Intraweb完全服务器端运行使得FastReport报表系统无法在客户端运行,当然网上也有一大堆解决方案,例如导出到PDF后,给出连接,让客户点击 ...
- XP系统显示文件夹选项属性被删除解决注册表
Title:XP系统显示文件夹选项属性被删除解决注册表 -- 2010-11-18 13:17 昨天中了个毒窝,还有恶意软件,十分不爽. 开始恶意软件把显示所有文件夹给删除了,去找了个注册表,重新注册 ...
- DACL, NULL or not NULL
上周 hBifTs在折腾他的文件映射封装类的时候,碰到了不能在 ASP.NET 中直接打开由桌面程序创建的内核对象的问题. 内存映射文件与用户权限 他当时是的方法是修改 ASP.NET 配置文件,让 ...
- 网络编程中几个地址结构与转换(in_addr,sockaddr,sockaddr_in,pcap_addr)
man socket可以查看相关信息. socket头文件: #include <sys/types.h> /* See NOTES */ #include <sys/socket. ...
- [LeetCode] 55. Jump Game 解题思路
Given an array of non-negative integers, you are initially positioned at the first index of the arra ...