作业帮 > 综合 > 作业

有n盏灯 编号1~n 第一个人把所有灯点亮 ,第2个人按下所有编号为2的倍

来源:学生作业帮 编辑:搜搜考试网作业帮 分类:综合作业 时间:2024/05/15 01:11:41
有n盏灯 编号1~n 第一个人把所有灯点亮 ,第2个人按下所有编号为2的倍
有n盏灯 编号1~n 第一个人把所有灯点亮 ,第2个人按下所有编号为2的倍数的灯开关,第3人按编号为3的灯(其中关的灯被打开 开的灯被熄灭),求最后哪些灯开着?   .这是书上的答案,请问![a]就是等于1吗?还有if(first) first=0那里没看懂,帮我理一下思路吧,
有n盏灯 编号1~n 第一个人把所有灯点亮 ,第2个人按下所有编号为2的倍
这个是白皮书上的题吧.
把数组a清零之后,每次 j%i==0 a[j] = !a[j];取反的意思就是把0变非零,非零变零.
0和非零,来模拟灯的状态,0表示灯在关着,取非!之后表示灯在开着.
if(first)first = 0;就是为了满足题意的输出要求,书上写的很清楚,如果是想要单纯学算法,不需要在意那些细节,掌握重要思路及代码就行了;如果要比赛,这个就比较重要,需要谨慎.
if(first)就相当于if(first!=0)的意思.
还有什么不懂的吗?
有100盏灯,编号依次为1,2,3.100,电灯全部关着.现在来了100个人,第一个人把所有编号为1的倍 有100盏灯,编号依次为1,2,3.100,电灯全部关着.现在来了100个人,第一个人把所有编号为1的倍数(1,2.10 设编号从1,2,...,n的n个人围坐一圈,约定编号为k(1 数据结构课程设计:设有n个人围坐在一个圆桌周围,编号为1,2,…,n.现在从第s个人开始逆序报数,即:第s个 原始的Joseph问题的描述如下:有n个人围坐在一个圆桌周围,把这n个人依次编号为1,……,n.从编号是1 的人开始报数 C语言:有n个人围成一圈,按顺序从1到n编号.从第一个人开始报数,报数3的人退出圈子 C语言 有n个人围成一圈,按顺序从1到n编号.从第一个人开始报数,报数3的人退出圈子 有n个人围成一圈,按顺序从1到n编号.从第一个人开始报数,报数3的人退出圈子,下一个人从1开始重新报数, 约瑟夫环问题:设编号为1,2,3,……,n的n(n>0)个人按顺时针方向围坐一圈,m为任意一个正整数.从第一个 设有n个人围坐一圈并按顺时针方向从1到n编号,从第s个人开始进行1到m的报数,报数到第m个人,此人出圈,再从他的下一个人 C 设有n个人围坐一圈并按顺时针方向从1到n编号,从第s个人开始进行1到m的报数,报数到第m个人,此人出圈,再从他的下一 有N个人围成一个圈顺序编号,从第一个人开始报数(从1到M),凡报到M的人退出圈子,