#YBT02070013. 黑白棋子的移动

黑白棋子的移动

题目描述

有 nn 个白棋子和 nn 个黑棋子排成一行,初始白棋全部在左、黑棋全部在右,最右侧另有两个相邻空位。白棋用 o、黑棋用 *、空位用 - 表示。每次选择相邻的两个棋子,将它们一起跳到两个空位上,二者的左右顺序不变;原位置变为两个新空位。移动必须跳过至少一个棋子,不能把相邻棋子平移进紧挨着的空位。请输出一种移动过程,使所有棋子最终连续排列且黑白交替。

输入格式

输入一个整数 nn。

输出格式

输出初始状态和每一步后的状态,第 ii 行状态格式为 step编号:状态串,从 step0: 开始连续编号,冒号后不加空格。最后两个空位应在棋子序列的一端。允许任意合法方案,移动次数不超过 1000010000。

样例

4
step0:oooo****--
step1:ooo--***o*
step2:ooo*o**--*
step3:o--*o**oo*
step4:o*o*o*--o*
step5:--o*o*o*o*

数据范围

4≤n≤494\le n\le49。