PAT 乙级 1003 我要通过,卡在第 0 测试点了。请帮看一下
问题描述:
下面是我的代码。想不到什么测试用例了。
#include<stdio.h>
int main(){
int n,cnt1,cnt2,cnt3,p,t,b;
char c;
scanf("%d\n",&n);
for (int i=1;i<=n;i++) {
p=b=t=1;
cnt1=cnt2=cnt3=0;
while (scanf("%c",&c)&&c!='\n') {
if (c!='P'&&c!='A'&&c!='T') {
printf("NO\n");
b=0;
break;
}
if (c=='P') {
p--;
} else if (c=='T') {
t--;
}
if (c!='P'&&p==1) {
cnt1++;
}
if (c!='T'&&t==1) {
cnt2++;
}
cnt3++;
}
if (b==1) {
if ((cnt1*(cnt2-cnt1-1)==(cnt3-cnt2-1))&&cnt2-cnt1-1>0&&p==0&&t==0&&cnt2>cnt1) {
printf("YES\n");
} else {
printf("NO\n");
}
}
}
}