1 条题解

  • 0
    @ 2025-2-14 21:13:45

    C++ :

    #include<iostream>
    #include<cstdio>
    #include<cstdlib>
    #include<cstring>
    #include<algorithm>
    #include<string>
    #include<queue>
    #define maxx 1000000
    using namespace std;
    
    long long int n,t,p;
    char c[maxx];
    
    void print()
    {
    	cout<<"step "<<t<<":";
    	for(int i=1;i<=2*n+2;++i)
    		cout<<c[i];
    	cout<<endl;
    	t++;
    }
    
    void scan(int n)
    {
    	t=0;
    	p=2*n+1;
    	for(int i=1;i<=n;++i)
    		c[i]='o';
    	for(int i=n+1;i<=2*n;++i)
    		c[i]='*';
    	c[2*n+1]='-';c[2*n+2]='-';
    	print();
    }
    
    void work(int k)
    {
    	for(int j=0;j<=1;++j)
    	{
    		c[p+j]=c[k+j];
    		c[k+j]='-';
    	}
    	p=k;
    	print();
    }
    
    void mm(int n)
    {
    	if(n==4)
    	{
    		work(4);
    		work(8);
    		work(2);
    		work(7);
    		work(1);
    	}
    	else
    	{
    		work(n);
    		work(2*n-1);
    		mm(n-1);
    	}
    }
    int main()
    {
    	ios::sync_with_stdio(false);
    	
    	cin>>n;
    	
    	scan(n);
    	mm(n);
    	
    	return 0;
    }
    
    
    • 1

    信息

    ID
    727
    时间
    1000ms
    内存
    128MiB
    难度
    (无)
    标签
    递交数
    0
    已通过
    0
    上传者