Android 算法--100盏灯问题
https://blog.csdn.net/tongsiw/article/details/109826181
问题:
题目描述:问题描述:有100盏灯,编号依次为1,2,3.100,电灯全部关着。现在来了100个人,第一个人把所有的灯开关按下;第二个人隔一个灯按下(2,4,6…);第三个人每隔两个灯按下(3,6,9…).第100个人隔99个灯按下(100),最后还有几盏灯,那几盏灯亮着? 问题分析:对于每个人在拉关开关就是将原来的变反。现在第一个人走后,所有的灯全亮;第二个人走后,2 的倍数的灭。。。。以此类推。。。。。1、对于每盏灯,拉动的次数是奇数时,灯就是亮着的,拉动的次数是偶数时,灯就是关着的。2、 每盏灯拉动的次数与它的编号所含正约数的个数有关,它的编号有几个正约数,这盏灯就被拉动几次。3、1~100这100个数中有哪几个数,约数的个数是奇数。我们知道一个数的约数都是成对出现的,只有完全平方数约数的个数才是奇数个。
所以这100盏灯中有10盏灯是亮着的。
它们的编号分别是: 1、4、9、16、25、36、49、64、81、100。
代码:
import java.util.*;public class test{private static int count = 0;public static void main(String[] args) {int a[] = new int[100]; //100盏灯的状态Arrays.fill(a, 0);for (int i = 1; i <= a.length; i++){ //100个人for (int j = 0; j < a.length; j++){ //100盏灯if ((j+1) % i == 0){ //第(j+1)盏灯对于被第i个人的行为后的状态。if (a[j] == 0){ //原来的状态取反a[j] = 1;}else{a[j] = 0;}}}}for (int c : a){if (c == 1){count ++;}}System.out.println(count);}
}
Android 算法--100盏灯问题相关推荐
- 算法--100盏灯问题
题目 一间屋子里有100盏灯排成一行,按从左至右的顺序编号1.2.3.4.5-99.100,每盏灯都有一个开关,开始全部都关着,现有100个学生, 1.第1个学生按了1的倍数的灯,也就说被按灯的编号为 ...
- JAVA大厅有100盏灯_由100盏灯想到的(一)
大厅里有100盏灯,每盏灯都编了号码,分别为1-100.每盏灯由一个开关来控制.(开关按一下,灯亮,再按一下灯灭.开关的编号与被控制的灯相同.)开始时,灯是全灭的.现在按照以下规则按动开关. 第一次, ...
- js:自动亮起100盏灯
1) 使用js在页面上显示100盏灯,并标记从1到100的编号 2) 页面加载后3秒,从编号是1的灯依次自动亮起. 3) 每过0.5秒亮下一盏灯(10分) 4) 所有灯亮起后, ...
- 五年级数学:100盏灯问题
题目: 一间屋子里有100盏灯排成一行,按从左到右的顺序编上号1.2.3.4.5--99.100,每盏灯都有一个开关,开始全都关着,把100个学生排在后面,第1个学生把1的倍数的灯全都拉一下,第2个同 ...
- 【面试题】-100盏灯
一道挺有意思的逻辑题 房间里有100盏电灯,编号为1,2,3--100,每盏灯上有一个按钮,初始时灯全都是关的. 编好号的100位同学由房间外依次走进去,将自己编号的倍数的灯的按钮全部按 ...
- JAVA大厅有100盏灯,100人100盏灯(详解)
题:一百盏灯排成一排,初始状态是亮的, 编号为 1-100,100个人编号1-100.每个人从1号灯开始逐次走过这100盏灯.每个人只拉他对应编号的倍数的灯,问最后亮着几盏灯? 这是一道很经典的笔试题 ...
- 面试题-100盏灯问题
题目 一间屋子里有100盏灯排成一行,按从左至右的顺序编号1.2.3.4.5-99.100,每盏灯都有一个开关,开始全部都关着,现有100个学生,第1个学生把1的倍数的灯全部拉一下,第2个学生把2的倍 ...
- 大厅里有100盏灯,每盏灯都编了号码,分别为1-100。每盏灯由一个开关来控制。
小弟学识浅薄,欢迎各位评论指点,谢谢! <pre name="code" class="html">import java.io.BufferedR ...
- 大厅里有100盏灯,每盏灯都编了号码,分别为1-100。每盏灯由一个开关来控制
大厅里有100盏灯,每盏灯都编了号码,分别为1-100.每盏灯由一个开关来控制.(开关按一下,灯亮,再按一下灯灭.开关的编号与被控制的灯相同.)开始时,灯是全灭的.现在按照以下规则按动开关. 第一次, ...
最新文章
- OI基础系列之最大子数组问题
- 【C++】枚举类型应用
- 如何查看别人公众号自定义菜单的功能_如何注册自己的个人公众号?手把手教您开启自媒体赚钱之路?...
- python最简单的架构_Python实现简单状态框架的方法
- 【大话数据结构算法】冒泡排序
- Leetcode--145. 二叉树的后序遍历(迭代递归)
- js 动态生成html(js根据后台返回数据生成html页面中的table标签)(转义字符)
- dom4j获取指定节点值_XML解析之DOM4j以及XPATH技术
- 学开发的基本规范和要求
- 2015级C++第7周项目 友元、共享数据保护、多文件结构
- 抖音直播引流的最快方法是什么?就简单两招破500人!
- 基于libusb库、uac协议,获取Audio声音数据
- wordpress 数据库_如何在WordPress中创建视频库(逐步)
- 金立android怎么升级到7.o,金立手机怎么刷机?只需七步轻松刷机
- Manjaro 安装后的设置
- Python从入门到PY交易,基础语法,散记(二)
- 以太坊智能合约ganache+truffle集成开发实验
- 线性回归(课堂记录)
- 计算机考试随机出题,驾考宝典怎么随机出题 驾考宝典随机练习的教程
- iOS 作为Central蓝牙连接外围(上)