0分求调
查看原帖
0分求调
1344299
zhaohongbo1234楼主2025/1/15 21:48

题目传送门
样例过了

#include<bits/stdc++.h>
#define int long long
using namespace std;
char s[1000];
string out[4]={"ooo*o**--*", "o--*o**oo*", "o*o*o*--o*", "--o*o*o*o*"};
signed main(){
	int n,num,ans;
	cin>>n;
	num=n*2-6;
	ans=n;
	for(int i=0;i<n;i++) 
		s[i]='o';
	for(int i=n;i<n*2;i++)
		s[i]='*';
	s[n*2]='-',s[n*2+1]='-';
	for(int i=0;i<n*2+2;i++)
			cout<<s[i];
	cout<<endl;
	while(num--){
		if(num%2){
			swap(s[ans-1],s[ans*2]);
			swap(s[ans],s[ans*2+1]);
		}
		else{
			swap(s[ans],s[(ans-1)*2]);
			swap(s[ans-1],s[(ans-1)*2+1]);
			ans--;
		}
		for(int i=0;i<n*2+2;i++)
			cout<<s[i];
		cout<<endl;
	}
	for(int i=0;i<4;i++){
		cout<<out[i];
		for(int j=4;j<n;j++)
			cout<<"o*";
		cout<<endl;
	}
	return 0;
}

2025/1/15 21:48
加载中...