题目名称 1161. 黑白棋子的移动
输入输出 chessman.in/out
难度等级
时间限制 1000 ms (1 s)
内存限制 128 MiB
测试数据 5
题目来源 Gravatar王者自由 于2012-10-16加入
开放分组 全部用户
提交状态
分类标签
模拟
分享题解
通过:65, 提交:85, 通过率:76.47%
GravatarConanQZ 100 0.000 s 0.17 MiB Pascal
Gravatar传奇 100 0.000 s 0.17 MiB Pascal
Gravatar筽邝 100 0.000 s 0.17 MiB Pascal
Gravatarhelloworld123 100 0.000 s 0.17 MiB Pascal
GravatarVacaTionGOD 100 0.000 s 0.17 MiB Pascal
Gravatar我想 100 0.000 s 0.17 MiB Pascal
Gravatar传奇 100 0.001 s 0.17 MiB Pascal
Gravatar..... 100 0.001 s 0.17 MiB Pascal
Gravatar521 100 0.001 s 0.23 MiB C++
Gravatarミント 100 0.001 s 0.29 MiB C++
关于 黑白棋子的移动 的近10条评论(全部评论)
找规律吧..
GravatarHakurou!
2016-04-15 20:00 5楼
分治分治
GravatarVacaTionGOD
2016-02-05 13:51 4楼
Gravatar521
2016-01-03 16:08 3楼
Gravatarforever
2015-06-09 21:31 2楼
Gravatar传奇
2014-11-02 10:58 1楼

1161. 黑白棋子的移动

★   输入文件:chessman.in   输出文件:chessman.out   简单对比
时间限制:1 s   内存限制:128 MiB

【问题描述】

有$2n(n\geq 4)$个棋子排成一行,开始为位置白子全部在左边,黑子全部在右边。如下图为$n=5$的情况:

○○○○○●●●●●

移动棋子的规则是:

(1)每次必须同时移动相邻的两个棋子,颜色不限,可以左移也可以右移到空位上去,但不能调换两个棋子的左右位置。

(2)每次移动必须跳过若干个棋子(不能平移),要求最后能移成黑白相间的一行棋子。

如$n=5$时,成为:

○●○●○●○●○●

任务:编程打印出移动过程。

【输入格式】

一个整数 $n$。

【提示】

若干行,表示初始状态和每次移动的状态,用o表示白子,*表示黑子,-表示空位。

【样例输入2】

7

【样例输出2】

step 0:ooooooo*******--
step 1:oooooo--******o*
step 2:oooooo******--o*
step 3:ooooo--*****o*o*
step 4:ooooo*****--o*o*
step 5:oooo--****o*o*o*
step 6:oooo****--o*o*o*
step 7:ooo--***o*o*o*o*
step 8:ooo*o**--*o*o*o*
step 9:o--*o**oo*o*o*o*
step10:o*o*o*--o*o*o*o*
step11:--o*o*o*o*o*o*o*

【提示】

--表示棋盘上的空位。