有n盏灯,编号为1~n。1号将灯全部打开,2将按下所有为2的倍数的开关,(这些灯将被关掉)第3个人按下所有编号为3的倍数的开关(该灯如为打开的, 则将它关闭;如关闭的,则将它打开)。以此类推,一共有k个人,最后有哪些灯开着?

k<=n<=1000


import java.util.Scanner;public class ssss {public static void main(String[] args) {ssss s = new ssss();Scanner scanner = new Scanner(System.in);int n = scanner.nextInt();int k = scanner.nextInt();int[] a = s.inputN(n);boolean[] bs = s.inputB(n + 1);// 遍历,开关灯for (int ni = 1; ni <= k; ni++) {for (int kj = 1; kj <= n; kj++) {if (kj % ni == 0) {bs[kj] = s.light(bs[kj]);}}}// 最后开着的灯for (int i = 1; i <= n; i++) {if (bs[i] == true) {System.out.println(i + " ");}}}/*** 填充N盏灯* * @param n* @return*/public int[] inputN(int n) {int[] a = new int[n];for (int i = 0; i < n - 1; i++) {a[i] = i;}return a;}/*** 初始化灯* * @param n* @return*/public boolean[] inputB(int n) {boolean[] b = new boolean[n];for (int i = 0; i < n - 1; i++) {b[i] = false;}return b;}/*** 灯的开关(取反),是k倍数的则取反* * @param l* @return*/public boolean light(boolean l) {if (l == true) {return false;} else {return true;}}
}

开灯问题~有n盏灯,编号为1~n。1号将灯全部打开,2将按下所有为2的倍数的开关,(这些灯将被关掉)第3个人按下所有编号为3的倍数的开关(该灯如为打开的, 则将它关闭;如关闭的,则将它打开)。相关推荐

  1. 算法题:150盏亮着的电灯,各有一个拉线开关控制,编号为1~150 将编号为1~150倍数的灯,依次拉一下 问:拉完后亮着的灯数为几盏? 哪盏灯被拉的最多?

    (以前写的东西,现在搬上来,现在变笨了,何解?/(ㄒoㄒ)/~~) 同学在朋友圈分享了一个问题,我试着写了下. 问题: 150盏亮着的电灯,各有一个拉线开关控制,编号为1-150 将编号为1-150倍 ...

  2. JAVA大厅有100盏灯_由100盏灯想到的(一)

    大厅里有100盏灯,每盏灯都编了号码,分别为1-100.每盏灯由一个开关来控制.(开关按一下,灯亮,再按一下灯灭.开关的编号与被控制的灯相同.)开始时,灯是全灭的.现在按照以下规则按动开关. 第一次, ...

  3. linux下camera驱动分析_《Linux设备驱动程序》(五)——字符设备驱动(下)

    上一节介绍了字符驱动中的一些概念,这一节我们将会基于系统内存编写一个字符设备驱动,加深对上一节中的概念的理解. 本节主要学会的内容: 字符设备注册 对设备节点进行cat和echo操作 驱动设计 编写驱 ...

  4. 【C#】编号生成器(定义单号规则、固定字符、流水号、业务单号)

    系列文章 [C#]编号生成器(定义单号规则.固定字符.流水号.业务单号) 本文链接:https://blog.csdn.net/youcheng_ge/article/details/12912978 ...

  5. R语言使用dplyr包使用group_by函数、summarise函数和mutate函数计算分组下的均值、标准差、样本个数、以及分组均值的95%执行区间对应的下限值和上限值(Calculate CI)

    R语言使用dplyr包使用group_by函数.summarise函数和mutate函数计算分组下的均值.标准差.样本个数.以及分组均值的95%执行区间对应的下限值和上限值(Calculate 95% ...

  6. .某学校的学生公寓有14栋楼,用A~N这14个大写字母的其中一个代表楼号,每栋楼的层数为6层,用1~6六个数字表示。每层楼有40个房间,编号为01~40。具体表示一个宿舍房间时,用1个字母加3位数字表

    软件测试--等价类划分法 1.某学校的学生公寓有14栋楼,用A-N这14个大写字母的其中一个代表楼号,每栋楼的层数为6层,用1-6六个数字表示.每层楼有40个房间,编号为01-40.具体表示一个宿舍房 ...

  7. 编写一个学生和教师数据的输入和显示程序,学生数据有编号、姓名、班号和成绩,教师数据有编号、姓名、职称和部门

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 题目: 编写一个学生和教师数据的输入和显示程序,学生数据有编号.姓名.班号和成绩,教师数据有编号.姓名.职称和部门. 要求将编号.姓名 ...

  8. 使用API绘制轮船,并实现按下键盘上的W,A,S,D键进行上下左右移动,按下+,-键实现放大和缩小功能

    使用API绘制轮船,并实现按下键盘上的W,A,S,D键进行上下左右移动,按下+,-键实现放大和缩小功能 代码中的坐标为提前在草纸上设计好的,如果想要设计其它图形,可计算各点坐标,用图形拼凑自己想要的图 ...

  9. word图片自动编号,前面加章节号

    老实说很多人都没有系统性地学过WORD,毕竟所见即所得,就是学过也比较浅.那么在使用word写作论文时就会感到很烦,因为你想要控制好章节,这样很多的地方就可以按照这种章节自动编号,处理不同节的页眉和页 ...

  10. 对数字求特征值是常用的编码算法,奇偶特征是一种简单的特征值。对于一个整数,从个位开始对每一位数字编号,个位是1号,十位是2号,以此类推。这个整数在第n位上的数字记作x,如果x和n的奇偶性相同,则记下一

    题目内容: 对数字求特征值是常用的编码算法,奇偶特征是一种简单的特征值.对于一个整数,从个位开始对每一位数字编号,个位是1号,十位是2号,以此类推.这个整数在第n位上的数字记作x,如果x和n的奇偶性相 ...

最新文章

  1. [新功能]团队Blog群发邮件
  2. 百度地图经常崩溃的问题
  3. python PyQt5.QtWidgets.QApplication类(sys.argv)(app应用对象类)
  4. 计算机狐狸标志的程序,小狐狸等分线计算工具
  5. 使用ueditor实现多图片上传案例——DaoImpl层(ShoppingDaoImpl)
  6. 技术人必看:15张图对比高效与瞎忙的区别!
  7. 工业相机和普通相机的区别详解_机器视觉网:工业相机与普通相机的四大区别...
  8. SQL执行效率2-执行计划
  9. SDxCentral 2015年NFV报告
  10. Layui的TreeTable使用
  11. 费尔防火墙源代码阅读
  12. 表设计原则_表格设计原则
  13. CMD和AMD的区别
  14. 通过CCproxy配置内网linux服务器
  15. 这48条人际关系准则,会真正提升你的社交情商
  16. python 003 __小斌文档 | python 变量
  17. python怎么变成动图_python 生成动图
  18. 学习笔记21.07.09:绘制色块图
  19. switch组件使用 v-slot 使用,作用域插槽
  20. numeric比较大小 数据库_数据库基础知识个人整理版-强烈推荐

热门文章

  1. 不同类型的物联网产品、物联网产品的优势
  2. Python数据可视化:5段代码搞定散点图绘制与使用,值得收藏
  3. 07 Java 工程师面试技巧篇
  4. 65个最常见的面试问题与技巧性答复(面试技巧和注意事项),很不错,求职之前,多看看
  5. Laravel学习笔记(8)利用SEEDER或者模型工厂批量导入数据
  6. 关于nginx日志的HTTP 499状态码
  7. day002-2019-07-30
  8. 新版Chrome设置--disable-web-security无效 解决方法
  9. 用python制作3d动图_怎样用Python制作好玩的GIF动图
  10. 【Coursera-Machine Learning】自用5