提交时间:2019-11-13 18:43:46

运行 ID: 2227

#include<iostream> using namespace std; char a[10000]; int n,sp; void print() { for(int i=1;i<=2*n+2;i++)cout<<a[i]; cout<<endl; } void move(int k) { for(int j=0;j<=1;j++) { a[sp+j]=a[k+j]; a[k+j]='-'; } sp=k; print(); } void choose(int x) { if(x==4) { move(4);move(8);move(2);move(7);move(1); } else { move(x);move(2*x-1);choose(x-1); } } int main() { cin>>n; sp=2*n+1; for(int i=1;i<=n;i++)a[i]='o'; for(int i=n+1;i<=2*n;i++)a[i]='*'; a[2*n+1]='-'; a[2*n+2]='-'; print(); choose(n); }