描述
有n個棋子(n≥4)排成一行,開始位置為白子全部在左邊,黑子全部在右邊,如下圖為n=5的情形:○○○○○●●●●●
移動棋子的規則是:每次必須同時移動相鄰的兩個棋子,顏色不限,可以左移也可以右移到空位上去,但不能調換兩個棋子的左右位置。每次移動必須跳過若干個棋子(不能平移),要求最後能移成黑白相間的一行棋子。如n=5時,成為:○●○●○●○●○●
任務:程式設計列印出移動過程。
格式
輸入格式
輸入n。
輸出格式
移動過程。
樣例
輸入樣例
輸出樣例
step 0:ooooooo*******–
step 1:oooooo–o
step 2:oooooo*–o*
step 3:ooooo–oo
step 4:ooooo–oo
step 5:oooo–ooo
step 6:oooo***–ooo*
step 7:ooo–oooo*
step 8:oooo**–ooo*
step 9:o–o**ooooo*
step10:ooo*–oooo
step11:–ooooooo*
限制
時間限制: 1000 ms
記憶體限制: 65536 kb
int m;
void
tiaoqi
(char s,
int n,
int bol)
else
}for
(int i=
0;i1;i++)}
tiaoqi
(s,n-1,
0);}
else
}for
(int i=
0;i2;i++)}
tiaoqi
(s,n-1,
1);}
}}intmain()
qp[2*n]
='-'
,qp[
2*n+1]
='-'
,qp[
2*n+2]
='\0'
;//for(int i=0;i<=2*n+1;i++) printf("%c",qp[i]);
tiaoqi
(qp,
2*n-3,
1);return0;
}
黑白棋子的移動
有2n個棋子 n 4 排成一行,開始位置為白子全部在左邊,黑子全部在右邊,如下圖為n 5的情形 移動棋子的規則是 每次必須同時移動相鄰的兩個棋子,顏色不限,可以左移也可以右移到空位上去,但不能調換兩個棋子的左右位置。每次移動必須跳過若干個棋子 不能平移 要求最後能移成黑白相間的一行棋子。如n 5時,...
luogu1259 黑白棋子的移動
時空限制 1000ms 128mb 有2n個棋子 n 4 排成一行,開始為位置白子全部在左邊,黑子全部在右邊,如下圖為n 5的情況 移動棋子的規則是 每次必須同時移動相鄰的兩個棋子,顏色不限,可以左移也可以右移到空位上去,但不能調換兩個棋子的左右位置。每次移動必須跳過若干個棋子 不能平移 要求最後能...
P1259 黑白棋子的移動
我們先分析一下樣例 ooooooo oooooo o oooooo o ooooo o o ooooo o o oooo o o o oooo o o o ooo o o o o ooo o o o o o o oo o o o o o o o o o o o o o o o o o 每兩行分一組的...