开灯问题—C语言
开灯问题
有n盏灯,编号为1~n.第1个人把所有灯打开,第2个人按下所有编号为2的倍数开关(这些灯将被关掉),第3个人按下所有编号为3的倍数的开关,以此类推。一共有k个人,问最后哪些灯是开着?输入n和k,输出开着的灯的编号。k<=n<=100
•样例输入
7 3
•样例输出
1 5 6 7
思路:1.定义一组数组,初始化状态为0(开灯状态用1表示,关灯状态用0表示)
2.遍历循环k个人的操作,判断灯的号码是否为第i个人的倍数,符合条件则取反灯的开关状态
3.最后遍历数组,输出状态为1的灯的编号
代码如下:
- #include<stdio.h>
- #include<string.h>
- int main()
- {
- int n,k;
- int a[];
- memset(a,,sizeof(a));//假设0表示灯关着,1表示灯开着,初始设置所有灯为关闭
- scanf("%d%d",&n,&k);//输入n盏灯,k个人
- for(int i=;i<=k;i++)//第1~k个人
- for(int j=;j<=n;j++)
- if(j%i==) a[j]=!a[j];//判断灯的号码是否为第i个人的倍数,符合条件则取反灯的开关状态
- for(i=;i<=n;i++)
- if(a[i])//输出开着的灯的编号
- printf("%d ",i);
- printf("\n");
- return ;
- }
开灯问题—C语言的更多相关文章
- c语言实现开灯问题
开灯问题: 有n盏灯,编号为1~n,第1个人把所有灯打开,第2个人按下所有编号为2 的倍数的开关(这些灯将被关掉),第3 个人按下所有编号为3的倍数的开关(其中关掉的灯将被打开,开着的灯将被关闭),依 ...
- 开灯问题3_2(JAVA语言)
package 第三章; public class 开灯问题3_2 { public static void main(String[] args) { // TODO Auto-generated ...
- 9509 开灯(dfs)
9509 开灯 时间限制:1000MS 内存限制:65535K提交次数:0 通过次数:0 题型: 编程题 语言: G++;GCC Description 有16的开关分别控制16盏灯,开关排列成 ...
- Jquery开灯关灯效果
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- NYOJ 题目77 开灯问题(简单模拟)
开灯问题 时间限制:3000 ms | 内存限制:65535 KB 难度:1 描述 有n盏灯,编号为1~n,第1个人把所有灯打开,第2个人按下所有编号为2 ...
- 洛谷 P1876 开灯(思维,枚举,规律题)
P1876 开灯 题目背景 该题的题目是不是感到很眼熟呢? 事实上,如果你懂的方法,该题的代码简直不能再短. 但是如果你不懂得呢?那...(自己去想) 题目描述 首先所有的灯都是关的(注意是关!),编 ...
- 【Luogu1876】开灯(数论)
[Luogu1876]开灯(数论) 题面 题目描述 首先所有的灯都是关的(注意是关!),编号为1的人走过来,把是一的倍数的灯全部打开,编号为二的的把是二的倍数的灯全部关上,编号为3的人又把是三的倍数的 ...
- 学习GO第一天,自我感觉可麻利的开干了-GO语言配置、开发、服务器部署
学习GO第一天,自我感觉可麻利的开干了-GO语言配置.开发.服务器部署 第一步下载 go sdk https://golang.org/dl/ https://storage.googleapis.c ...
- POJ 1218 THE DRUNK JAILER(类开灯问题,完全平方数)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2188 题目大意:n为5-100之间的一个数,代表有多少间牢房,刚开始所有房间打开,第一轮2的倍数的房间 ...
随机推荐
- 7.学习springmvc的异常处理
一.页面的异常处理流程 二.建立项目springmvc04_exception 1.编写index.jsp页面: <%@ page contentType="text/html;cha ...
- nginx if配置说明
格式:if (条件判断) { 具体的rewrite规则 } 条件举例: 条件判断语句由Nginx内置变量.逻辑判断符号和目标字符串三部分组成. 其中,内置变量是Nginx固定的非自定义的变量,如,$r ...
- HTTPS加密协议过程
1.客户端发起https请求 指用户在浏览器中输入一个https网址,然后链接到server的443端口 2.服务端的配置 在服务端向CA机构申请SSL数字证书.SSL证书就是一对公钥和私钥.公钥相当 ...
- mercurial branch name use integer as a name
问题:mercurial branch name use integer as a name 解决: 到安装目录下找到mercurial/scmutil.py文件(我的:/usr/local/Cell ...
- 定时任务、js定时任务
intervalID =setInterval("getIsCookie()",1000); //开始任务 clearInterval(intervalID);//停止任务
- maven 左边空了
看一下maven: 解决方法:进入maven的配置,把maven的路径配置一下,就好了: 结果:
- 关于用maven创建的springboot工程打包jar后找不到配置文件的问题
你的resources文件夹的名称写错了!!! 如果不在pom中配置build的资源路径,那么你的资源文件名必须默认是“resources”! 解决办法有两个: 1.修改文件夹名称 2.添加pom的b ...
- SAS 获取系统选项设置的过程步 PROC OPTIONS OPTION=()
PROC OPTIONS OPTION=(VALIDVARNAME LS);RUN;
- 【转】Android Fastboot 与 Recovery 和刷机
1. 首先来看下Android系统的分区: Android系统的分区.jpg Android分区解释.png 安卓系统一般把rom芯片分成7个区,如果再加上内置sd卡这个分区,就是8个: hb ...
- Nexus Repository Manager OSS 3.x 安装配置
前言想要使用maven搭建项目,但是国内的网络环境可以想象,还有公司自己开发的jar包等问题,所以需要搭建一个maven的私服,这样便于管理. 找了一些教程,顺便记下来,当做笔记. 本文以Window ...