您的位置:首页 > 其它

PAT1003 我要通过

2014-05-21 12:48 239 查看
从左往右查看,A的个数在三种条件下才通过:

1、(a,1,a)

2、(a,1+i,a+a*i)

3、a>0

#include<iostream>
#include<string>
using namespace std;

int main(){
int n;
string st;
cin>>n;
while(n--)
{
cin>>st;

int a=st.find_first_not_of("A");
if(  (a==string::npos)  ||  (st[a]!='P')  )
{cout<<"NO\n";continue;}

int b=st.find_first_not_of("A",a+1);
if( (b==string::npos)  ||  (st[b]!='T')  ||  ((a+1)==b)  )
{cout<<"NO\n";continue;}

if(st.find_first_not_of("A",b+1)!=string::npos)
{cout<<"NO\n";continue;}

if(   a*(b-1-a)==(st.size()-b-1)  )
cout<<"YES\n";
else cout<<"NO\n";
}
return 0;}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: