Submission #1255660


Source Code Expand

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
#define loop(i,a,b) for(i=a;i<b;i++)
#define rloop(i,a,b) for(i=a;i>=b;i--)
#define vi vector<int>
#define vl vector<ll>
#define vii vector< vector<int> >
#define vll vector< vector<ll> >
#define vs vector<string>
const int inf=1000000001;
const ll INF=1e16;
#define MOD 1000000007
#define mod 1000000009
#define pi 3.14159265358979323846

void fill(string &ans,string &s,int k);
bool check(string &ans,string &s,int n);

int main(){
	int n,i,j,k;
	cin>>n;
	string s;
	cin>>s;
	bool flag=false;
	string ans;
	loop(i,0,2){
		loop(j,0,2){
			ans.clear();
			if(i==0){
				ans+='S';
			}else{
				ans+='W';
			}
			if(j==0){
				ans+='S';
			}else{
				ans+='W';
			}
			loop(k,2,n){
				fill(ans,s,k);
			}
			flag=check(ans,s,n);
			if(flag){
				break;
			}
		}
		if(flag){
			break;
		}
	}
	cout<<flag<<endl;
	if(!flag){
		cout<<-1<<endl;
	}else{
		loop(i,0,n){
			cout<<ans[i];
		}
		cout<<endl;
	}
}

void fill(string &ans,string &s,int k){
	if(s[k-1]=='o'){
		if(ans[k-1]=='S'){
			if(ans[k-2]=='S'){
				ans+='S';
			}else{
				ans+='W';
			}
		}else{
			if(ans[k-2]=='S'){
				ans+='W';
			}else{
				ans+='S';
			}
		}
	}else{
		if(ans[k-1]=='S'){
			if(ans[k-2]=='S'){
				ans+='W';
			}else{
				ans+='S';
			}
		}else{
			if(ans[k-2]=='S'){
				ans+='S';
			}else{
				ans+='W';
			}
		}
	}
}

bool check(string &ans,string &s,int n){
	if(s[n-1]=='o'){
		if(ans[n-1]=='S'){
			if(ans[n-2]==ans[0]){
				return true;
			}else{
				return false;
			}
		}else{
			if(ans[n-2]==ans[0]){
				return false;
			}else{
				return true;
			}
		}
	}else{
		if(ans[n-1]=='S'){
			if(ans[n-2]==ans[0]){
				return false;
			}else{
				return true;
			}
		}else{
			if(ans[n-2]==ans[0]){
				return true;
			}else{
				return false;
			}
		}
	}
}

Submission Info

Submission Time
Task D - Menagerie
User fuppy0716
Language C++14 (GCC 5.4.1)
Score 0
Code Size 1934 Byte
Status WA
Exec Time 10 ms
Memory 640 KB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 0 / 500
Status
WA × 3
WA × 16
Set Name Test Cases
Sample 00_example_01.txt, 00_example_02.txt, 00_example_03.txt
All 00_example_01.txt, 00_example_02.txt, 00_example_03.txt, 01.txt, 02.txt, 03.txt, 04.txt, 05.txt, 06.txt, 07.txt, 08.txt, 09.txt, 10.txt, 11.txt, 12.txt, 13.txt
Case Name Status Exec Time Memory
00_example_01.txt WA 1 ms 256 KB
00_example_02.txt WA 1 ms 256 KB
00_example_03.txt WA 1 ms 256 KB
01.txt WA 7 ms 512 KB
02.txt WA 5 ms 512 KB
03.txt WA 1 ms 256 KB
04.txt WA 1 ms 256 KB
05.txt WA 10 ms 640 KB
06.txt WA 8 ms 640 KB
07.txt WA 2 ms 256 KB
08.txt WA 3 ms 384 KB
09.txt WA 2 ms 256 KB
10.txt WA 3 ms 384 KB
11.txt WA 9 ms 640 KB
12.txt WA 9 ms 640 KB
13.txt WA 10 ms 640 KB