有编号1~100个灯泡,起初所有的灯都是灭的。有100个同学来按灯泡开关,如果灯是亮的,那么按过开关之后,灯会灭掉。如果灯是灭的,按过开关之后灯会亮。

现在开始按开关。

第1个同学,把所有的灯泡开关都按一次(按开关灯的编号: 1,2,3,……100)。
第2个同学,隔一个灯按一次(按开关灯的编号: 2,4,6,……,100)。
第3个同学,隔两个灯按一次(按开关灯的编号: 3,6,9,……,99)。
……

问题是,在第100个同学按过之后,有多少盏灯是亮着的?

第一种暴力循环,看起来效果也是不错的,下面是第一部分是暴力循环代码,当然还有一种是用数学的方法,非常巧妙

#include <iostream>using namespace std;int a[1010] = {0};int main()
{int n, k, first = 1;cin>>n>>k;for (int i = 1; i <= k; i++){for (int j = 1; j <= n; j++){if (j % i == 0){a[j] = !a[j];}}}for (int i = 1; i <= n; i++){if(a[i]){if (first){first = 0;}else{cout<<" ";}cout<<i;}}return 0;
}

下面是数学的方法

http://www.cnblogs.com/haolujun/archive/2012/10/10/2719031.html

开关灯问题两种解决方法相关推荐

  1. mysql workbench kernelbase.dll_电脑出现kernelbase.dll错误的两种解决方法

    KernelBase.dll是Windows操作系统的重要文件,它为各种应用程序提供服务.如果电脑提示kernelbase.dll错误,这该怎么处理?大家可以用电脑自带的防火墙或者是第三方软件来进行故 ...

  2. Json返回时间中出现乱码问题的两种解决方法

    Json返回时间中出现乱码问题的两种解决方法 参考文章: (1)Json返回时间中出现乱码问题的两种解决方法 (2)https://www.cnblogs.com/hanyinglong/archiv ...

  3. css之文本两端对齐的两种解决方法

    css之文本两端对齐的两种解决方法 参考文章: (1)css之文本两端对齐的两种解决方法 (2)https://www.cnblogs.com/wl0804/p/11265225.html 备忘一下.

  4. Ajax跨域问题的两种解决方法

    Ajax跨域问题的两种解决方法 参考文章: (1)Ajax跨域问题的两种解决方法 (2)https://www.cnblogs.com/pandang/p/5341250.html 备忘一下.

  5. Qt信号与槽传递自定义数据类型——两种解决方法

    Qt信号与槽传递自定义数据类型--两种解决方法 参考文章: (1)Qt信号与槽传递自定义数据类型--两种解决方法 (2)https://www.cnblogs.com/tid-think/p/9300 ...

  6. but was actually of type 'com.sun.proxy.$Proxy**'的两种解决方法

    错误描述:Caused by: org.springframework.beans.factory.BeanNotOfRequiredTypeException: Bean named '****' ...

  7. html文件打开系统错误,win7打开word提示“无法打开文件Normal因为内容有错误”的两种解决方法...

    win7系统打开Word的时候,弹出提示"无法打开文件Normal.dotm,因为内容有错误",为什么会出现错误提示呢?小编就按照错误提示寻找文件,最后发现是Word自动生成的模板 ...

  8. c语言键盘按f1显示f1,windows10键盘f1变成功能键的两种解决方法

    现在越来越多朋友都升级系统到win10正式版,因此他们反馈的win10系统相关问题也增多了.比如,有位用户表示电脑升级到win10后,F1~F12都没办法使用了,变成了功能键,都不用按下FN了,按了F ...

  9. php无限极 left right,php无限极分类实现的两种解决方法

    本篇文章介绍了,在php中无限极分类实现的两种解决方法.需要的朋友参考下 method of classify one<?php /* reader: 这是自己写的无限极分类实现方法 里面的编辑 ...

最新文章

  1. 比特币现金支付接入日本便利店
  2. mysql的B+树如何存储主键和数据,磁盘io和innodb页大小的一些问题
  3. 解题报告 『[NOI2014]起床困难综合症(位运算)』
  4. 打jar包和执行jar包
  5. 读书笔记007:《伤寒论》- 手少阴心经
  6. 成功安装mysql后,为何服务管理器里找不到MySQL服务名(解析篇)
  7. Linux 中设置环境变量的三种方法
  8. 如何取得select结果数据集的前10条记录。postgresql
  9. RabbitMQ基础知识详解
  10. Qt 基于Google引擎的拼音输入法
  11. 计算机英语背诵发音,联想法巧记英语单词5000发音记忆法背单词
  12. Lamda表达式-入门篇
  13. 微信卡包开发(JS-JDK)
  14. 思考(六十四):游戏中的角色ID问题
  15. 纪念小企鹅──fcitx
  16. 安卓自定义View进阶-多点触控详解
  17. Pyhton爬虫实战 - 抓取BOSS直聘职位描述 和 数据清洗
  18. 基于新浪微博API生成短链接的几款在线工具
  19. 电脑监控软件如何安装使用?
  20. dubbo服务暴露原理解析

热门文章

  1. 信托资金将分辨用于向邢台依林山庄食物有限公司、唐山国泰纸业有限公司、唐山蓝猫饮品团体有限公司发放流动资金贷款1亿、1.5亿、1亿
  2. Multisim--软件简介及安装教程(含Multisim14安装包资源)
  3. matlab2c使用c++实现matlab函数系列教程-fix函数
  4. 我们的23种设计模式(一)
  5. nginx配置只开放指定目录访问
  6. 大数据:千万个“路人甲”的价值逻辑
  7. 手机端input[type=date]的时候placeholder不起作用解决方案
  8. 正则表达式语法----re模块
  9. 【云原生利器之Cilium】什么是Cilium
  10. 基于jsp+mysql+ssm知了堂财务报账管理系统-计算机毕业设计