问题3055--卫星(star)

3055: 卫星(star)

时间限制: 1 Sec  内存限制: 128 MB
提交: 61  解决: 44
[提交] [状态] [讨论版] [命题人:]

题目描述

小B是一个卫星通讯达人,她建立了一套环球卫星通讯系统。此系统由n颗通讯卫星组成,编号为1到n,呈环状。为了保证信息通信的安全,在信息传递时将一条信息分割到各个卫星中传递。按以下规则接收信号:先接收第1号卫星上的信号,再间隔1颗卫星接收信号,这时恰好是第2号卫星上的信号;接下来间隔2颗卫星,接收到是第3号卫星上的信号。依此类推,每次间隔的卫星数量为上一次接收到的卫星编号。一颗卫星只接收一次信号,接收过的卫星不再接收第二次信号,即此卫星不计算在间隔的卫星数量中。按此规则,正好可以接收到所有n颗卫星的信号,并组成最终信息。
例如,有5颗卫星时,假设5颗卫星的环状编排顺序为:1 3 2 5 4,4号卫星的下一颗卫星是1号卫星。按上述规则接收信号的过程为:
①先接收1号卫星上的信号;
②接着间隔1颗,轮到2号卫星;
③接着间隔开颗2颗(卫星5和卫星4),由于是环状,又从1号开始数,由于1号已经接收过信号了,不计算在内,所以轮到3号卫星;
④接着间隔3颗(卫星5、卫星4、卫星5),轮到4号卫星;
⑤接着间隔4颗(卫星5、卫星5、卫星5、卫星5),轮5号卫星。
由上述步骤可知,接收到的卫星信号顺序为1 2 3 4 5。
输入卫星的数量n,帮小B设计卫星的编排顺序,使得可以按照卫星编号1到n的顺序接收信号。

输入

一个整数n,表示卫星的数量。

输出

卫星的排布顺序。

样例输入 Copy

5

样例输出 Copy

1 3 2 5 4

提示

【输入样例2】
13
【输出样例2】
1 8 2 5 10 3 12 11 9 4 7 6 13
【数据范围】
50%的数据,1≤n≤1000
100%的数据,1≤n≤10000

来源/分类