@[lnrx](/user/513901) 本题有SPJ,移动合法即可
by Dr_Gilbert @ 2022-03-31 20:10:53
@[Dr_Gilbert](/user/574568) 多谢(终于知道SPJ的意思了)
by I_love_Cathy @ 2022-03-31 20:24:58
@[Dr_Gilbert](/user/574568) em???为什么这也不行??```c
#include <iostream>
using namespace std;
int n,k;
int main() {
cin>>n;
for(int i=0; i<n; i++) {
k=n-i;
for(int j=1; j<=k; j++)cout<<"o";
for(int j=1; j<=k; j++)cout<<"*";
cout<<"-"<<"-";
for(int j=1; j<=i;j++)cout<<"o*";
cout<<endl;
for(int j=1; j<=k; j++)cout<<"o";
cout<<"-"<<"-";
for(int j=1; j<=k; j++)cout<<"*";
for(int j=1; j<=i;j++)cout<<"o*";
cout<<endl;
}
cout<<"-"<<"-";
for(int i=1; i<=n; i++ )cout<<"o*";
return 0;
}
```
by I_love_Cathy @ 2022-03-31 20:31:25
@[I_love_Cathy](/user/513901) 每一次只能移两个棋子
by E_CO @ 2023-03-31 13:25:24
```
7
ooooooo*******--
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*
oo**--o*o*o*o*o*
oo--**o*o*o*o*o*
o*--o*o*o*o*o*o*
o--*o*o*o*o*o*o*
--o*o*o*o*o*o*o*
```
而且它说要相邻的两个,也就是说你上一行这两个要移动的棋子要是相邻的:
```
(...)o*(...)--
```
这样这两个棋子在下一步时才能移,你输出数据的第二、三行:
```
ooooooo--*******(第二行)
oooooo******--o*(第三行)
```
第二行没有相邻的“o*”,所以你在第三行就无法直接移动。
by E_CO @ 2023-03-31 13:37:21