`
dyllove98
  • 浏览: 1405430 次
  • 性别: Icon_minigender_1
  • 来自: 济南
博客专栏
73a48ce3-d397-3b94-9f5d-49eb2ab017ab
Eclipse Rcp/R...
浏览量:39058
4322ac12-0ba9-3ac3-a3cf-b2f587fdfd3f
项目管理checkList...
浏览量:80060
4fb6ad91-52a6-307a-9e4f-816b4a7ce416
哲理故事与管理之道
浏览量:133167
社区版块
存档分类
最新评论

一道逻辑题 房间里有100盏电灯

 
阅读更多

一道挺有意思的逻辑题

房间里有100盏电灯,编号为1,2,3……100,每盏灯上有一个按钮,初始时灯全都是关的。
       编好号的100位同学由房间外依次走进去,将自己编号的倍数的灯的按钮全部按一次,例如第一位同学把编号是1的倍数的灯的按钮按一下(此时100盏灯全亮),第二位同学把编号是2的倍数的灯的按钮按一下(此时只有50盏灯亮着,50盏被这个人按灭了)……第100位同学把编号是100的倍数的灯(即编号为100的灯)的按钮按一下,请问依次走完后,还有多少盏灯亮着?


从要做淡定姐的博客上看到的这个逻辑题,感觉很有意思,就说那程序完成下,本来一个很简单的东西结果用了半个多小时才写出来,真是惭愧。。。

public class test {

    public static void main(String args[]) {
        int[] lights = new int[100];
        int[] users = new int[100];
        int[] result = new int[100];

        for (int i = 1; i <= 100; i++) {
            lights[i - 1] = i;
            users[i - 1] = i;
        }
        for (int i = 0; i < 100; i++) {
            int user = users[i];
            for (int j = 0; j < 100; j++) {
                int light = lights[j];
                if (light % user == 0) {
                    if (result[j] == 0) {
                        result[j] = 1;
                    } else {
                        result[j] = 0;
                    }
                }
            }
            for (int e = 0; e < 100; e++) {
                if (result[e] == 1) {
                    System.out.print((e + 1) + "-");
                }
            }
            System.out.println();
        }
    }
}

1-4-9-16-25-36-49-64-81-100-

 

 

应该还有更简单的算法

分享到:
评论

相关推荐

    逻辑题 各大公司笔试

    在准备各大公司的笔试过程中,逻辑题是不可或缺的一部分。这些题目旨在测试应聘者的逻辑思维能力、问题解决技巧以及推理能力,是评估潜在员工智力水平的重要工具。以下是对标题、描述及标签所涉及知识点的详细说明:...

    程序员 笔试 逻辑题

    在程序员的笔试中,逻辑题是一项重要的考核内容,它不仅测试了候选人的编程能力,还考察了他们的逻辑思维、问题解决和分析能力。C++作为一款广泛应用的编程语言,其理解与运用逻辑对于解决这类问题至关重要。这次...

    75道逻辑题.txt

    ### 逻辑题解析 #### 逻辑题一:水量计算 **题目描述:** 有三个容器,容量分别为5升、6升、3升。利用这三个容器,如何准确地量出4升水? **解题思路:** 1. **初始状态:**5升容器装满水,其余容器为空。 2. **...

    一道逻辑推理题的程序实现(纯属娱乐)

    标题中的“一道逻辑推理题的程序实现(纯属娱乐)”指的是通过编程来解决一个逻辑思维挑战的问题。这种问题通常需要运用到算法和数据结构的知识,可能是关于逻辑判断、搜索或者数学推理。在这个实例中,博主可能使用...

    逻辑经典题库1250题

    【标题】"逻辑经典题库1250题"与【描述】中提到的是MBA历年逻辑试题的分类分析,特别是加强型逻辑试题的解析。加强型逻辑试题旨在通过补充信息来增强题干中推理或论证的有效性。这类试题的特点是论证的论据可能不...

    数字逻辑训练100题

    《数字逻辑训练100题》是一份专为提升逻辑思维能力设计的训练材料,尤其适合准备面试或者希望增强逻辑推理技巧的人群。这100道题目旨在通过数字和逻辑的结合,锻炼你的分析、判断和解决问题的能力,让你在面对复杂...

    训练逻辑思维的100道趣题

    训练逻辑思维的100道趣题》是一本既有刺激性又有娱乐性的迷人趣题的结集。本书仅涉及逻辑趣题。其中的趣题都经过仔细筛选或精心设计(有许多是由作者或插图画家原创),使得其中没有一道会难得让那些并非数学家的...

    程序逻辑题(100道)

    6. 字符串处理:字符串在编程中广泛使用,理解字符串的拼接、查找、替换等操作,对解决逻辑问题非常有帮助。 7. 数据结构:栈、队列、链表、树等数据结构的使用,能帮助我们更高效地解决问题。比如,你可能需要实现...

    笔试75道逻辑题和答案

    此外,逻辑题还有助于提高决策和批判性思维。在IT项目管理中,我们需要在多种方案中做出最优选择,这需要对各种可能的结果进行逻辑推理和评估。 总之,这份“笔试75道逻辑题和答案”不仅可以帮助你在求职笔试中取得...

    MBA逻辑真题附解析.doc

    本MBA逻辑真题附解析.doc文件考察了逻辑推理、逻辑判断、逻辑分析等多种逻辑能力,旨在评估考生的逻辑思维能力和分析能力。 此外,我们还可以总结出以下几个知识点: * 逻辑思维:逻辑思维是指通过分析和评估信息...

    数理逻辑习题解与精要

    在压缩包中的《数理逻辑与集合论(第二版)精要与题解》文件,很可能是对上述内容的详细解析和解答,包含了解题思路、关键步骤以及相关知识点的精要总结。读者可以通过这个资源来深化对数理逻辑的理解,同时提升解决...

    2019届京东校招逻辑试题.pdf

    某工人单独打开甲进水管一段时间后发现水槽底部有个破洞,这个破洞可以用6个小时排空整个水槽的水,这名工人随机封堵了破洞并同时打开乙进水管,我们可以通过逻辑推理来解决这个问题,从而获取正确的答案。...

    MBA逻辑考试经典题库.part1

    1250题精粹 书籍目录: 第一部分历年MBA逻辑考试试题分类解析经典题库 一、加强型逻辑试题与解析 二、基本推理型逻辑试题与解析 三、削弱型逻辑试题与解析 四、解释说明型逻辑试题与解析 五、假设型逻辑试题与...

    数字逻辑试题及答案数字逻辑试题及答案数字逻辑试题及答案

    【数字逻辑试题解析】 数字逻辑是一门研究数字信号处理的学科,主要涉及数字系统的分析、设计和实现。在本试题中,我们涵盖了多个关键概念,包括...解答这些问题需要深入理解数字逻辑的基本原理和常见电路的运作机制。

    经典逻辑题库

    3. **逻辑关联词**:诸如“所有”、“有些”、“如果…那么…”等词汇在逻辑题中起到关键作用,它们规定了不同陈述之间的关系。理解这些关联词的含义和用法,能帮助你正确地构建和分析论证。 4. **削弱与加强**:这...

    嵌入式 面试 智力题 逻辑题

    在IT行业中,嵌入式系统的设计与开发是一个关键领域,特别是在面试过程中,面试官往往会提出一些独特的智力题和逻辑题来测试候选人的思维敏捷度、问题解决能力和编程基础。这些题目不仅考察技术知识,还检验候选人在...

    java面试题 程序员面试 逻辑题 笔试题

    java面试题 程序员面试 逻辑题 笔试题

    常见经典面试逻辑题

    这些题目是典型的面试逻辑题,主要考察应聘者的逻辑思维、观察力、问题解决能力和抽象推理能力,这些都是IT行业中非常重要的技能。以下是对这些题目类型及其解题思路的详细解析: 1. 字母序列:这是一个等差序列,...

    锻炼脑子的逻辑题

    例如第一题中,利用5升和6升的水壶取得3升水的过程就是一个典型的逻辑推理题,通过不断倒水、计算水量来达到目标。 2. **数学思维**:部分题目涉及到数学概念,如容积、概率和几何。第二题中,通过简单的数字排列和...

Global site tag (gtag.js) - Google Analytics