计蒜客-一维跳棋

本文介绍了一维跳棋的游戏规则,棋盘为1×(2N+1)大小,游戏开始时黑白棋子分别置于两端。玩家可以进行相邻移动或跳跃对手棋子到空位。以N=3为例,展示了棋盘状态和空格位置。输入N值,程序将输出对应最小步数的解,输出格式为每行5个数,按步数从小到大排列。
摘要由CSDN通过智能技术生成

一维跳棋是一种在
1×(2N+1)1\times(2N+1)
1×(2N+1) 的棋盘上玩的游戏。一共有
NN
N 个棋子,其中
NN
N 个是黑的,
NN
N 个是白的。游戏开始前,
NN
N 个白棋子被放在一头,
NN
N 个黑棋子被放在另一头,中间的格子空着。在这个游戏里有两种移动方法是允许的:你可以把一个棋子移到与它相邻的空格;你可以把一个棋子跳过一个(仅一个)与它不同色的棋子到达空格。
对于
N=3N=3
N=3 的情况,棋盘状态依次为:

1
WWW BBB
2
WW WBBB
3
WWBW BB
4
WWBWB B
5
WWB BWB
6
W BWBWB
7
WBWBWB
8
BW WBWB
9
BWBW WB
10
BWBWBW
11
BWBWB W
12
BWB BWW
13
B BWBWW
14
BB WBWW
15
BBBW WW
16
BBB WWW

对应的空格所在的位置(从左数)为:3 5 6 4 2 1 3 5 7 6 4 2 3 5 4。
输入格式
输入仅一个整数,表示针对
N(1≤N≤12)N(1 \leq N \leq 12)
N(1≤N≤12) 的取值。
输出格式
依次输出空格所在棋盘的位置,每个整数间用空格分隔,每行
55
5 个数(每行结尾无空格,最后一行可以不满
55
5 个数;如果有多组移动步数最小的解,输出第一个数最小的解)
样例输入
4
样例输出
4 6 7 5 3
2 4 6 8 9
7 5 3 1 2
4 6 8 7 5
3 4 6 5

未完标记

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值