开关灯问题两种解决方法
有编号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
开关灯问题两种解决方法相关推荐
- mysql workbench kernelbase.dll_电脑出现kernelbase.dll错误的两种解决方法
KernelBase.dll是Windows操作系统的重要文件,它为各种应用程序提供服务.如果电脑提示kernelbase.dll错误,这该怎么处理?大家可以用电脑自带的防火墙或者是第三方软件来进行故 ...
- Json返回时间中出现乱码问题的两种解决方法
Json返回时间中出现乱码问题的两种解决方法 参考文章: (1)Json返回时间中出现乱码问题的两种解决方法 (2)https://www.cnblogs.com/hanyinglong/archiv ...
- css之文本两端对齐的两种解决方法
css之文本两端对齐的两种解决方法 参考文章: (1)css之文本两端对齐的两种解决方法 (2)https://www.cnblogs.com/wl0804/p/11265225.html 备忘一下.
- Ajax跨域问题的两种解决方法
Ajax跨域问题的两种解决方法 参考文章: (1)Ajax跨域问题的两种解决方法 (2)https://www.cnblogs.com/pandang/p/5341250.html 备忘一下.
- Qt信号与槽传递自定义数据类型——两种解决方法
Qt信号与槽传递自定义数据类型--两种解决方法 参考文章: (1)Qt信号与槽传递自定义数据类型--两种解决方法 (2)https://www.cnblogs.com/tid-think/p/9300 ...
- but was actually of type 'com.sun.proxy.$Proxy**'的两种解决方法
错误描述:Caused by: org.springframework.beans.factory.BeanNotOfRequiredTypeException: Bean named '****' ...
- html文件打开系统错误,win7打开word提示“无法打开文件Normal因为内容有错误”的两种解决方法...
win7系统打开Word的时候,弹出提示"无法打开文件Normal.dotm,因为内容有错误",为什么会出现错误提示呢?小编就按照错误提示寻找文件,最后发现是Word自动生成的模板 ...
- c语言键盘按f1显示f1,windows10键盘f1变成功能键的两种解决方法
现在越来越多朋友都升级系统到win10正式版,因此他们反馈的win10系统相关问题也增多了.比如,有位用户表示电脑升级到win10后,F1~F12都没办法使用了,变成了功能键,都不用按下FN了,按了F ...
- php无限极 left right,php无限极分类实现的两种解决方法
本篇文章介绍了,在php中无限极分类实现的两种解决方法.需要的朋友参考下 method of classify one<?php /* reader: 这是自己写的无限极分类实现方法 里面的编辑 ...
最新文章
- 比特币现金支付接入日本便利店
- mysql的B+树如何存储主键和数据,磁盘io和innodb页大小的一些问题
- 解题报告 『[NOI2014]起床困难综合症(位运算)』
- 打jar包和执行jar包
- 读书笔记007:《伤寒论》- 手少阴心经
- 成功安装mysql后,为何服务管理器里找不到MySQL服务名(解析篇)
- Linux 中设置环境变量的三种方法
- 如何取得select结果数据集的前10条记录。postgresql
- RabbitMQ基础知识详解
- Qt 基于Google引擎的拼音输入法
- 计算机英语背诵发音,联想法巧记英语单词5000发音记忆法背单词
- Lamda表达式-入门篇
- 微信卡包开发(JS-JDK)
- 思考(六十四):游戏中的角色ID问题
- 纪念小企鹅──fcitx
- 安卓自定义View进阶-多点触控详解
- Pyhton爬虫实战 - 抓取BOSS直聘职位描述 和 数据清洗
- 基于新浪微博API生成短链接的几款在线工具
- 电脑监控软件如何安装使用?
- dubbo服务暴露原理解析
热门文章
- 信托资金将分辨用于向邢台依林山庄食物有限公司、唐山国泰纸业有限公司、唐山蓝猫饮品团体有限公司发放流动资金贷款1亿、1.5亿、1亿
- Multisim--软件简介及安装教程(含Multisim14安装包资源)
- matlab2c使用c++实现matlab函数系列教程-fix函数
- 我们的23种设计模式(一)
- nginx配置只开放指定目录访问
- 大数据:千万个“路人甲”的价值逻辑
- 手机端input[type=date]的时候placeholder不起作用解决方案
- 正则表达式语法----re模块
- 【云原生利器之Cilium】什么是Cilium
- 基于jsp+mysql+ssm知了堂财务报账管理系统-计算机毕业设计