ACM算法 -- 数论 -- 开灯关灯问题(数论,整数分解,因子个数,公式推导)

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

现在开始按开关。

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

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

这个问题有一个数学上的解决方法。可以看出,被按了奇数次的灯泡应该是亮着的,被按了偶数次的灯泡应该是灭的。那么什么样的灯泡被按了奇数次?什么样的灯泡又被按了偶数次呢?从按的过程可以发现,如果一个灯泡的编号具有偶数个因子,那么该灯泡就被按了偶数次,反之按了奇数次。现在的问题又变成,什么样的编号具有奇数个因子,什么样的编号具有偶数个因子?这涉及到一个叫做质因数分解的定理,大概的意思是说,任何正数都能被唯一表示成多个质因数幂次乘积的方式。

例如:

14=2*7
50=2*5^2
...
100=2^2*5^2

也就是N=(p[1]^e[1])*(p[2]^e[2])*......*(p[k]^e[k]),其中p[i]是质数,e[i]是p[i]的幂次。而由这个公式我们又可以导出一个数有多少个因子的计算公式:FactorNumber(N)=(e[1]+1)*(e[2]+1)*......*(e[k]+1)。

那么什么条件下满足FactorNumber(N)是奇数呢?显然必须所有的e[1],e[2],......,e[k]都必须是偶数,这样才能保证e[i]+1是奇数,结果乘积才能是奇数。而由于e[1],e[2],......,e[k]都是偶数,那么N一定是一个完全平方数(因为sqrt(N)=(p[1]^(e[1]/2))*(p[2]^(e[2]/2))*......*(p[k]^(e[k]/2))是整数) 。回到按灯泡的问题上来,1~100中完全平方数有1,4,9,16,25,36,49,64,81,100这10个数,也就是说最后只有编号为这10个数的灯是亮着的。

参考博客:http://www.cnblogs.com/haolujun/archive/2012/10/10/2719031.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/441569.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

计算机编程是考研什么专业,程序员考研该不该继续选择计算机专业

首先,近些年来确实有不少程序员会选择通过读研来突破自身的岗位发展瓶颈,大部分程序员在读研后也都获得了岗位升级,还有一部分程序员会继续读博,从而进入到科研和教育领域发展。从当前的技术发展趋势和人才需求趋势来看&#xff0…

【牛客 - 185D】星光晚餐(数论,结论,思维,模型)

题干: Johnson和Nancy要在星光下吃晚餐。这是一件很浪漫的事情。 为了增加星光晚餐那浪漫的氛围,他拿出了一个神奇的魔法棒,并且可以按照一定的规则,改变天上星星的亮暗。 Johnson想考考Nancy,在他挥动魔法棒后&#x…

vue 模板 html 表达式,Vue 模板template、指令directive、修饰符

模板 templatetemplate的三种写法写法一:Vue完整版,写在HTML里//html{{n}}1//vuenew Vue({el: #xxx,data(){return{n:0}},methods:{add(){}}})复制代码写法二:Vue完整版,写在选项里//html//vuenew Vue({template: {{n}}1,data(){r…

黄冈学计算机的学校怎么样,广元市黄冈学校怎么样、好不好

问:广元市黄冈学校怎么样、好不好?答:办学四年多来,学校在上级主管部门考核中一直名列前茅,得到广大学生家长的认可,多次受到上级表彰,被评为“民办教育先进集体”,学校环境优美,是…

【 HDU - 1215 】七夕节(数论,约数和公式)

题干: 七夕节那天,月老来到数字王国,他在城门上贴了一张告示,并且和数字王国的人们说:"你们想知道你们的另一半是谁吗?那就按照告示上的方法去找吧!" 人们纷纷来到告示前,都想知道谁才是自己的另一半.告示如下: 数字N的因子就是所有比N小又能被N整除的…

计算机专业小三门要求,最新小三门选科要求有啥变化?附对比表

原标题:最新小三门选科要求有啥变化?附对比表刚刚,上海市教育考试院公布了2020年拟在沪招生普通高校、军队院校本科专业选考科目要求,让我们今年的选科范围有哪些变化?说明:1 选考范围为不限,说…

【51Nod - 1215 】数组的宽度 (单调栈 或 分治 或 单调队列,算贡献,需去重)

题干&#xff1a; N个整数组成的数组&#xff0c;定义子数组aii..ajj的宽度为&#xff1a;max(ai..aj) - min(ai..aj)&#xff0c;求所有子数组的宽度和。 Input 第1行&#xff1a;1个数N&#xff0c;表示数组的长度。(1 < N < 50000) 第2 - N 1行&#xff1a;每行1…

云昆明理工大学 计算机复试,2012年昆明理工大学计算机考研复试试题(回忆版)...

2012年昆明理工大学计算机考研复试试题(年昆明理工大学计算机考研复试试题(回忆版)回忆版)本试题由http://doc.xuehai.net网友kenden23提供笔试C(总共30分)一、40题选择题(20分)1.派生类调用构造函数时&#xff0c;基类的构造函数先调用&#xff1b;2. int a1,b1,c1,d1,e1;if((…

*【CodeForces - 122C 】Lucky Sum (bfs记录状态,二分查找,有坑)(或分块)

题干&#xff1a; Petya loves lucky numbers. Everybody knows that lucky numbers are positive integers whose decimal representation contains only the lucky digits 4 and 7. For example, numbers 47, 744, 4 are lucky and 5, 17, 467 are not. Let next(x) be the…

模拟量使用计算机电缆,DJYPVRP计算机电缆型号规格

计算机电缆用途&#xff1a;本产品适用于额定电压30/500v及以下防干扰性能要求较高的电子计算机、检测仪器、仪表的连接。使用条件&#xff1a; 计算机电缆(电压等级&#xff1a;0.45/0.75KV&#xff0c;企标)本产品使用于交流额定电压为300/500及以下&#xff0c;对于防干扰性…

【CodeForces - 155C】Hometask (字符串,思维,贪心,熟悉句式)(总结)

题干&#xff1a; Sergey attends lessons of the N-ish language. Each lesson he receives a hometask. This time the task is to translate some sentence to the N-ish language. Sentences of the N-ish language can be represented as strings consisting of lowercas…

html 报表插件,轻量级图形报表插件JSCharts

插件描述&#xff1a;JScharts是一个用于在浏览器直接绘制图表的JavaScript工具包。JScharts支持柱状图、圆饼图以及线性图&#xff0c;可以直接将这个图插入网页&#xff0c;JScharts图的数据可以来源于XML文件、JSON文件或JavaScript数组变量。2017-05-09更新&#xff1a;改为…

算法讲解 -- 二分图之 匈牙利算法

匈牙利算法是由匈牙利数学家Edmonds于1965年提出&#xff0c;因而得名。匈牙利算法是基于Hall定理中充分性证明的思想&#xff0c;它是部图匹配最常见的算法&#xff0c;该算法的核心就是寻找增广路径&#xff0c;它是一种用增广路径求二分图最大匹配的算法。 -------等等&…

html 表格文字颜色 css,CSS 表格-JavaScript中文网-JavaScript教程资源分享门户

使用 CSS 可以使 HTML 表格更美观。CompanyContactCountryAlfreds FutterkisteMaria AndersGermanyBerglunds snabbkpChristina BerglundSwedenCentro comercial MoctezumaFrancisco ChangMexicoErnst HandelRoland MendelAustriaIsland TradingHelen BennettUKKniglich EssenP…

计算机专业表白文案,深情表白文案40句

深情表白文案40句时间&#xff1a;2020-05-17 22:41:51 分类&#xff1a;经典语句 | 适合表白的句子 | Word文档下载深情表白文案40句导语&#xff1a;你是我生活的全部&#xff0c;是我一生拼搏奋斗的赌注。为了你披荆斩棘&#xff0c;为了你艰辛受苦&#xff0c;为了你众生…

【HRBUST - 1054 】Brackets! Brackets! (括号匹配,思维,STL栈)

题干&#xff1a; There are six kinds of brackets: ‘(‘, ‘)’, ‘[‘, ‘]’, ‘{’, ‘}’. dccmx’s girl friend is now learning java programming language, and got mad with brackets! Now give you a string of brackets. Is it valid? For example: “(([{}]))…

计算机中有关数及编码的知识,计算机中有关数及编码的知识

计算机中有关数及编码的知识1.计算机是智能化的电器设备计算机就其本身来说是一个电器设备&#xff0c;为了能够快速存储、处理、传递信息&#xff0c;其内部采用了大量的电子元件&#xff0c;在这些电子元件中&#xff0c;电路的通和断、电压高低&#xff0c;这两种状态最容易…

ACM技巧 - O(1)快速乘(玄学) 总结

ll fast_mult(ll a,ll b,ll mod) {return (a*b - (ll)((long double)a/mod*b)*modmod)%mod; } 参考&#xff1a;https://blog.csdn.net/m0_38013346/article/details/81435369 注意事项&#xff1a; double可能会挂&#xff0c;最好long double。u,v>p可能会挂&#xff0…

html盒子阴影只设置左右,只在容器一边或两边显示盒子阴影

实现方案首先定义一个有具体宽高的盒子&#xff0c;然后正确定位:after伪类。效果[图片上传中...(image.png-8e8e17-1593570486291-0)]底部阴影代码:Document.box-shadow {background-color: #FF8020;width: 160px;height: 90px;position: relative;}.box-shadow:after {conten…

【 HRBUST - 1055】Single(模拟,dp,打表)(总结)

题干&#xff1a; There are many handsome single boys in our team, for example, me. Some times, we like count singles. For example, in the famous “November 11th” (11.11), there are four singles ,so, single is actually 1. For another example, there are 2 …