12个小朋友手拉手站成一个圆圈,从某一个小朋友开始报数,报到7的那个小朋友退到圈外,然后他的下一位重新报“1”.这样继续
来源:学生作业帮 编辑:搜搜做题作业网作业帮 分类:综合作业 时间:2024/08/06 12:32:06
12个小朋友手拉手站成一个圆圈,从某一个小朋友开始报数,报到7的那个小朋友退到圈外,然后他的下一位重新报“1”.这样继续下去,最后只剩下一个小朋友,他原来站在什么位置上呢?用pascal
![12个小朋友手拉手站成一个圆圈,从某一个小朋友开始报数,报到7的那个小朋友退到圈外,然后他的下一位重新报“1”.这样继续](/uploads/image/z/12052079-71-9.jpg?t=12%E4%B8%AA%E5%B0%8F%E6%9C%8B%E5%8F%8B%E6%89%8B%E6%8B%89%E6%89%8B%E7%AB%99%E6%88%90%E4%B8%80%E4%B8%AA%E5%9C%86%E5%9C%88%2C%E4%BB%8E%E6%9F%90%E4%B8%80%E4%B8%AA%E5%B0%8F%E6%9C%8B%E5%8F%8B%E5%BC%80%E5%A7%8B%E6%8A%A5%E6%95%B0%2C%E6%8A%A5%E5%88%B07%E7%9A%84%E9%82%A3%E4%B8%AA%E5%B0%8F%E6%9C%8B%E5%8F%8B%E9%80%80%E5%88%B0%E5%9C%88%E5%A4%96%2C%E7%84%B6%E5%90%8E%E4%BB%96%E7%9A%84%E4%B8%8B%E4%B8%80%E4%BD%8D%E9%87%8D%E6%96%B0%E6%8A%A5%E2%80%9C1%E2%80%9D.%E8%BF%99%E6%A0%B7%E7%BB%A7%E7%BB%AD)
用out来记录小朋友的状态true为已经退出,false为还在圈内
我的算法:我们开始“报数”,每一轮报数游戏都会出去一个人,所以一共进行11轮报数
进行报数时,如果轮到的小朋友已经出圈了,我们就用while继续往后找直到找到一个没有报数的人,然后把第7个这样找到的人退出去,继续进行下一轮报数
每当一个小朋友x退出去,我们就out[x]:=true
n:=12;
now:=0;
for t:=1 to n-1 do //一共进行n-1轮报数游戏
begin
for i:=1 to 7 do
begin
now:=now mod n+1; //由于是一个圈,我们要mod使其可以循环
while out[now] do now:=now mod n+1; //当 now已经出圈了,我们继续找 直到找到
end;
out[now]:=true; //将这个第7个报数的退出去
end;
for i:=1 to n do //当前还没有出圈的就是我们需要的答案
if not out[i] then ans:=i;
我的算法:我们开始“报数”,每一轮报数游戏都会出去一个人,所以一共进行11轮报数
进行报数时,如果轮到的小朋友已经出圈了,我们就用while继续往后找直到找到一个没有报数的人,然后把第7个这样找到的人退出去,继续进行下一轮报数
每当一个小朋友x退出去,我们就out[x]:=true
n:=12;
now:=0;
for t:=1 to n-1 do //一共进行n-1轮报数游戏
begin
for i:=1 to 7 do
begin
now:=now mod n+1; //由于是一个圈,我们要mod使其可以循环
while out[now] do now:=now mod n+1; //当 now已经出圈了,我们继续找 直到找到
end;
out[now]:=true; //将这个第7个报数的退出去
end;
for i:=1 to n do //当前还没有出圈的就是我们需要的答案
if not out[i] then ans:=i;
12个小朋友手拉手站成一个圆圈,从某一个小朋友开始报数,报到7的那个小朋友退到圈外,然后他的下一位重新报“1”.这样继续
有500个小朋友拉成一个圆圈,从其中一个小朋友开始依次编号1-500,从1号小朋友开始循环1-3报数,数到3的
十几个小朋友围成一圈报数,已知1和100这2个数都是某一个小朋友报的,请问总共有多少个小朋友?
100个小朋友围成一圈,并依次编为1-100号.从第1号开始1至2报数,凡是报到1的小朋友退出圈子,这样循环进行到剩下最
二十个小朋友围成一圈,顺时针一圈一圈从1开始报数,如果报1和70的是同一个,问共有多少个小朋友?
13个小朋友围成一圈做游戏,规则是从某一个小朋友开始按顺时针方向数数,数到第13,该小朋友离开;这样继续下去,直到最后剩
1000名小朋友站成一排,从头开始1,2,3报数,报2,3的坐下;然后站着的小朋友又从头开始1、2、3报数,报2、3
有60个小朋友围成一圈玩报数游戏.游戏规则是 王小毛从1开始报数,如报到的数字中含7的数时,则要跳过不报
两个小朋友一起做报数游戏:从1开始按数的顺序轮流报数,报到30(或50、100).(1)每人每次可以报一个数或两个数,不
20个左右的小朋友围成一圈,从一开始报数,其中报5的小朋友也恰好报了195,这里共有几个小朋友?
1--8号8个小朋友围成一圈按1,2,3,4,5,6,7,8,...的顺序报数,但是从3号小朋友开始报”1“,请问32是
8个小朋友围成一个圈报数.按顺序从11报到50号.请你想一想.报17号和33号是不是同一