求助
查看原帖
求助
385428
wininaction楼主2022/6/23 19:47

wa了

#include<bits/stdc++.h>
using namespace std;

int n;
bool b[100005];

string ss()
{
	string ch;
	ch[1]='S';
	ch[2]='S';
	int cha;
	if(b[1]==true)
		cha='S';
	else
		cha='W';
	for(int i=2;i<=n;i++)
	{
		if((ch[i-1]=='S'&&ch[i]=='S'&&b[i])||(ch[i-1]=='W'&&ch[i]=='W'&&b[i])||(ch[i-1]=='W'&&ch[i]=='S'&&!b[i])||(ch[i-1]=='S'&&ch[i]=='W'&&!b[i]))
			ch[i+1]='S';
		else
			ch[i+1]='W';
	}
	if(ch[n]!=cha)
		ch[0]='F';
	else
		ch[0]='T';
	return ch;
}

string sw(){
	string ch;
	ch[1]='S';
	ch[2]='W';
	int cha;
	if(b[1]==true)
		cha='W';
	else
		cha='S';
	for(int i=2;i<=n;i++)
	{
		if((ch[i-1]=='S'&&ch[i]=='S'&&b[i])||(ch[i-1]=='W'&&ch[i]=='W'&&b[i])||(ch[i-1]=='W'&&ch[i]=='S'&&!b[i])||(ch[i-1]=='S'&&ch[i]=='W'&&!b[i]))
			ch[i+1]='S';
		else
			ch[i+1]='W';
	}
	if(ch[n]!=cha)
		ch[0]='F';
	else
		ch[0]='T';
	return ch;
}

string ws(){
	string ch;
	ch[1]='W';
	ch[2]='S';
	int cha;
	if(b[1]==true)
		cha='W';
	else
		cha='S';
	for(int i=2;i<=n;i++)
	{
		if((ch[i-1]=='S'&&ch[i]=='S'&&b[i])||(ch[i-1]=='W'&&ch[i]=='W'&&b[i])||(ch[i-1]=='W'&&ch[i]=='S'&&!b[i])||(ch[i-1]=='S'&&ch[i]=='W'&&!b[i]))
			ch[i+1]='S';
		else
			ch[i+1]='W';
	}
	if(ch[n]!=cha)
		ch[0]='F';
	else
		ch[0]='T';
	return ch;
}

string ww(){
	string ch;
	ch[1]='W';
	ch[2]='W';
	int cha;
	if(b[1]==true)
		cha='S';
	else
		cha='W';
	for(int i=2;i<=n;i++)
	{
		if((ch[i-1]=='S'&&ch[i]=='S'&&b[i])||(ch[i-1]=='W'&&ch[i]=='W'&&b[i])||(ch[i-1]=='W'&&ch[i]=='S'&&!b[i])||(ch[i-1]=='S'&&ch[i]=='W'&&!b[i]))
			ch[i+1]='S';
		else
			ch[i+1]='W';
	}
	if(ch[n]!=cha)
		ch[0]='F';
	else
		ch[0]='T';
	return ch;
}

int main(){
	
	cin >> n;
	for(int i=1;i<=n;i++)
	{
		char c;
		cin >> c;
		if(c=='o')
			b[i]=true;
		else
			b[i]=false;
	}
	string s1=ss(),s2=sw(),s3=ws(),s4=ww();
	if(s1[0]=='T')
		for(int i=1;i<=n;i++)
			cout << s1[i];
	else if(s2[0]=='T')
		for(int i=1;i<=n;i++)
			cout << s2[i];
	else if(s3[0]=='T')
		for(int i=1;i<=n;i++)
			cout << s3[i];
	else if(s4[0]=='T')
		for(int i=1;i<=n;i++)
			cout << s4[i];
	else
		cout << -1;
	return 0;
}

教教我,我朋友用这种方法都过了

2022/6/23 19:47
加载中...