有n个人围成一圈,按顺序从1到n编号.从第一个人开始报数,报数3的人退出圈子,下一个人从1开始重新报数,用指针怎么写,核心的算法有点想不明白
来源:学生作业帮助网 编辑:作业帮 时间:2024/09/29 21:08:48
xݒN@_w]x%lₐ4`l( x!M T̴oC l]Ws?e[L}h|!n* xقYш\0K 55'ؒeH:c-
-WQK*} I5
0u6S\Xԫ7weL ̯R(D_2K\8 Ĉ ƤAn^g~ek=wu>v1|^
:qLy bj;\A |AmeH
Cq>q B{54{/D<
~-;m/6I*zt<^eB ?
有n个人围成一圈,按顺序从1到n编号.从第一个人开始报数,报数3的人退出圈子,下一个人从1开始重新报数,用指针怎么写,核心的算法有点想不明白
有n个人围成一圈,按顺序从1到n编号.从第一个人开始报数,报数3的人退出圈子,下一个人从1开始重新报数,
用指针怎么写,核心的算法有点想不明白
有n个人围成一圈,按顺序从1到n编号.从第一个人开始报数,报数3的人退出圈子,下一个人从1开始重新报数,用指针怎么写,核心的算法有点想不明白
int a[N]={1};
int i=0,t=N,j=0;
while(t==1) //如果还剩下一个人,跳出循环
{
if(i==N) //这里是头尾衔接成一个圈
i=0;
if(a[i]!=0) //这里是计数报数
j++;
if(j==2) //这里是出圈子的人
{
a[i]=0;
j=0;
t--;
}
i++;
}
for(i=0;i