点击这里更换您喜欢的皮肤wtboj 首页
请点击这里登入noios   首页 入门 c++讲义 入门教程视频 金牌教程 入门视频 站务 公告 | 题库 记录 竞测 测试 闯关 作业 排名 团队 讨论 | 换肤 | 登入 注册  
News >>   新增功能:各团队管理员可以发布本团队作业了 ()

From sina007
约瑟夫的新问题
背景 Background
  为了for beginngers,特设此题,^_^
描述 Description
  约瑟夫的新问题

问题描述
将1~M这M个自然数按由小到大的顺序沿顺时针方向围成一圈。以S为起点,先沿顺时针方向数到第N个数就出圈,然后再沿逆时针方向数到第K个数再出圈,再沿顺时针方向数到第N个数就出圈,然后再沿逆时针方向数到第K个数再出圈,……。这样按顺时针方向和逆时针方向不断出圈,直到全部数都出圈为止。
请打印先后出圈的数的序列。

输入格式
文件中共4行,每行为一个自然数,分别表示M,S,N,K。M不超过1000。

输出格式
  仅1行,先后出圈的数的序列,每个数之间有1个空格。

样例输入(jsf.in)
8
1
3
2
样例输出(jsf.out)
3 1 5 2 7 4 6 8
(解释:先从1开始沿顺时针方向数到3,所以3先出圈;再从2开始沿逆时针方向数到1,所以1出圈;再从2开始沿顺时针方向数到5,所以5出圈,再从4开始沿逆时针方向数到2,所以2出圈,……)
样例输入 Sample Input
 
样例输出 Sample Output
 
时间限制 Time Limitation
  各个测试点1s
Flag
  
题号
  P1532
  其它
通过
  24人
提交
  66次
通过率
  36%
难度
  2
提交 讨论 题解
 Copyright wtboj © 2005-2006. www.wutuobang.date Powered by wtboj 关于 联系 帮助
 wtboj Information ---- Total Users : 1242 | Online Users / Processes : 0 / 51 | Processed Time : 85 ms | Server Time : 2025/4/27 2:49:41