搜索
编程论坛
→
开发语言
→
『 C语言论坛 』
→ 请高手指教提示思路,编程实现
标题:
请高手指教提示思路,编程实现
只看楼主
gengning938
等 级:
论坛游民
帖 子:12
专家分:10
注 册:2010-5-13
结帖率:
60%
楼主
已结贴
√
问题点数:15 回复次数:2
请高手指教提示思路,编程实现
有n个人,从第一个人开始报数,报到m的出列,再从下一个开始报数,直到最后一个人为幸运者;请高手提示思路,如何编程实现
搜索更多相关主题的帖子:
思路
提示
指教
2010-05-19 18:52
ww稻草人
来 自:陕西西安
等 级:
职业侠客
帖 子:57
专家分:309
注 册:2010-5-11
第
2
楼
得分:15
这是约瑟夫环问题,用n记录人数,再用一个循环控制数数即用i累加,然后用一个m值记录要报到的密码,当报到的数i等于要报道的密码m时,将此时的报到i的人的密码赋给m,然后让i置为1,删除此人;重新开始循环报数,当n等于1时结束。
我的博客 http://blog..cn/daocaoren020
2010-05-19 19:04
NoSoul
来 自:沈阳化工大学
等 级:
蜘蛛侠
帖 子:283
专家分:1010
注 册:2009-6-6
第
3
楼
得分:0
#include<stdio.h>
int main()
{
int i,j,n,m;
while(scanf("%d%d",&n,&m)!=EOF){
for(j=1,i=2;i<=n;i++)
j= j+m>i ? j+m-i:j+m;
printf("remain %d\n",j);
}
return 0;
}
我想伸手拉近點,竟觸不到那邊,就欠一點點,但這一點點...卻好遠
2010-05-19 19:06
3
1/1页
1
参与讨论请移步原网站贴子:
https://bbs.bccn.net/thread-307351-1-1.html
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.445665 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved