代码实现:
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
int Judge1(char *str)
{
for (int i = 0; i < strlen(str); i++)
if (str[i] != 'P'&&str[i] != 'T'&&str[i] != 'A')return 0;
return 1;
}
int Judge2(char *str)
{
int cntP = 0, cntT = 0, indexP = -1, indexT = -1;
int left, mid, right;
for (int i = 0; i < strlen(str); i++)
{
if (str[i] == 'P')
{
cntP++;
indexP = i;
}
else if (str[i] == 'T')
{
cntT++;
indexT = i;
}
}
if (cntP > 1 || cntT > 1)return 0;
left = indexP; right = strlen(str) - 1 - indexT; mid = indexT - indexP - 1;
if (mid == 0 || mid * left != right)return 0;
return 1;
}
int main()
{
char str[101];
int N;
scanf("%d", &N); getchar();
for (int i = 0; i < N; i++)
{
gets(str);
if (Judge1(str) == 1 && Judge2(str) == 1)printf("YES\n");
else printf("NO\n");
}
return 0;
}