博弈,不知道对不对
#include<cstdio>
#include<iostream>
#include<cstring>
#include<string>
#include<vector>
#include<algorithm>
#include<time.h>
using namespace std;
int s[30],N;
void change(int x,int y)
{
for(int i=x;i<=y;i++)
s[i]=3-s[i];
}
int dfs()
{
int count=0;
for(int i=0;i<=N;i++)
if(s[i]==2)
{
for(int j=0;j<=i;j++)
{
count++;
change(j,i);
if(!dfs())
{
change(j,i);
return 1;
}
change(j,i);
}
}
if(count<2) return count;
else return 0;
}
int main()
{
char str[30];
int T;
scanf("%d",&T);
while(T--)
{
scanf("%s",str);
N=strlen(str);
for(int i=0;i<N;i++)
{
if(str[i]=='T') s[i]=1;
else s[i]=2;
}
if(dfs())
puts("YES");
else
puts("NO");
}
return 0;
}