1003 我要通过! (20 分)

“答案正确”是自动判题系统给出的最令人欢喜的回复。本题属于 PAT 的“答案正确”大派送 —— 只要读入的字符串满足下列条件,系统就输出“答案正确”,否则输出“答案错误”。

得到“答案正确”的条件是:

  1. 字符串中必须仅有 P、 A、 T这三种字符,不可以包含其它字符;
  2. 任意形如 xPATx 的字符串都可以获得“答案正确”,其中 x 或者是空字符串,或者是仅由字母 A 组成的字符串;
  3. 如果 aPbTc 是正确的,那么 aPbATca 也是正确的,其中 a、 b、 c 均或者是空字符串,或者是仅由字母 A 组成的字符串。

现在就请你为 PAT 写一个自动裁判程序,判定哪些字符串是可以获得“答案正确”的。

输入格式:

每个测试输入包含 1 个测试用例。第 1 行给出一个正整数 n (<),是需要检测的字符串个数。接下来每个字符串占一行,字符串长度不超过 100,且不包含空格。

输出格式:

每个字符串的检测结果占一行,如果该字符串可以获得“答案正确”,则输出 YES,否则输出 NO

输入样例:

8
PAT
PAAT
AAPATAA
AAPAATAAAA
xPATx
PT
Whatever
APAAATAA

输出样例:

YES
YES
YES
YES
NO
NO
NO
NO

import java.util.Scanner;public class Main {public static void main(String[] args) {Scanner in =new Scanner(System.in);int num =in.nextInt();String []result=new String[num];for(int i =0;i<num;i++){String testStr=in.next();result[i]=myMethod(testStr);}for(String s:result){System.out.println(s);}}private static String myMethod(String s) {// TODO Auto-generated method stubchar[]tempChar=s.toCharArray();int countP=0;int countA=0;int countT=0;String result="";for (int i =0;i<tempChar.length;i++){if(tempChar[i]!='P'&&tempChar[i]!='A'&&tempChar[i]!='T'){break;}            else if(tempChar[i]=='P'){countP++;}else if(tempChar[i]=='A'){countA++;}else if(tempChar[i]=='T'){countT++;}if(countP==2||countT==2){break;}}if(countP==1&&countT==1&&countA!=0){int indexP=s.indexOf('P');int indexA=s.indexOf('A');int indexT=s.indexOf('T');if((indexP)*(indexT-indexP-1)==(s.length()-indexT-1)){result="YES";}else{result="NO";}}else{result="NO";}return result;}}

转载于:https://www.cnblogs.com/xiaozhushifu/p/10845780.html

1003 我要通过相关推荐

  1. BZOJ 1003[ZJOI2006]物流运输(SPFA+DP)

    Problem 1003. -- [ZJOI2006]物流运输 1003: [ZJOI2006]物流运输 Time Limit: 10 Sec  Memory Limit: 162 MB Submit ...

  2. 【ACM】杭电OJ 1003。

    运行环境VS2017  题目链接:杭电OJ 1003 主要思想是: 用d[i]来存放前i项中最大的和,得到end,然后再倒推,得起始的位置begin 然而在程序42行的疑问,大家可以讨论一下吗???? ...

  3. 1003 我要通过! (20point(s))

    1003 我要通过! (20point(s)) "答案正确"是自动判题系统给出的最令人欢喜的回复.本题属于 PAT 的"答案正确"大派送 -- 只要读入的字符串 ...

  4. 1003个微生物基因组数据发布

    迄今为止最大规模微生物基因组数据发布:1003个新参考基因组! 近日,美国能源部基因组研究所(DOE JGI)为地球微生物多样性的发现迈出了决定性的一步.6月12日在线发表在<Nature Bi ...

  5. 迪杰斯特拉算法——PAT 1003

    本文主要是将我对于我对于迪杰斯特拉算法的理解写出来,同时通过例题来希望能够加深对于算法的理解,其中有错误的地方希望大家指正. 迪杰斯特拉算法 我将这个算法理解成一个局部到整体的算法,这个方法确实越研究 ...

  6. 【BZOJ】1003: [ZJOI2006]物流运输trans(SPFA+DP)

    http://www.lydsy.com/JudgeOnline/problem.php?id=1003 这题一开始看是不会的额,,,还是看题解了..一开始我觉得不能用最短路啥的,,看了题解发现这是d ...

  7. hdu 1003 Max Sum 解题报告

    链接:http://acm.hdu.edu.cn/showproblem.php?pid=1003 Problem Description Given a sequence a[1],a[2],a[3 ...

  8. MacApp开发Error Domain=NSURLErrorDomain Code=-1003 A server with the specified hostname could not be

    在开发一个Mac端应用插件时,准备进行网络请求, 刚开始遇到错误,我很快明白是需要设置允许http网络, 但是之后一直遇到 finished with error - code: -1003 Erro ...

  9. 51Nod 1003 阶乘后面0的数量(数学,思维题)

    1003 阶乘后面0的数量 基准时间限制:1 秒 空间限制:131072 KB 分值: 5         难度:1级算法题 n的阶乘后面有多少个0? 6的阶乘 = 1*2*3*4*5*6 = 720 ...

  10. LETTers比赛第三场 --1003 大明A+B解题报告

    报告人:侯建鹏 报告日期:2012/4/16 1003 大明A+B 解题思路:模拟 我的方法很简单,就是不停的模拟.模拟.再模拟. 首先,把每个数都分成两部分,整数部分和小数部分,即a_h_count ...

最新文章

  1. Pytorch入门之VAE
  2. Flink的处理背压​原理及问题-面试必备
  3. portlet_平台策略:从Portlet到OpenSocial小工具再到渐进式Web应用程序:最新技术
  4. python开源流程图软件_Dia
  5. 从PeopleEditor控件中取出多用户并更新到列表
  6. 哈佛第二、哥大第三,第一还是它!2020USNews美国大学排名发布!
  7. java 数组 反射_【译】10. Java反射——数组
  8. chown –r mysql:mysql,mysql部署,操作及异常处理
  9. 从零开始,教初学者如何征战全球最大机器学习竞赛社区Kaggle竞赛
  10. SQLi LABS Less-39
  11. SFINAE 应用1
  12. 33.go 错误处理
  13. go build不从本地gopath获取_Go语言实战打包和工具链
  14. C/C++[codeup 1923]排序
  15. Java函数参数传递方式
  16. [经典力学]牛顿自然哲学的数学原理论文解读
  17. UI设计原型交互基础
  18. 【XXE技巧拓展】————8、黑夜的猎杀-盲打XXE
  19. python怎么保留整数输出_python怎么保留整数
  20. 全局记录RabbitMQ的消费者消息日志

热门文章

  1. **【POJ - 3122】 Pie(二分寻值)
  2. 【CodeForces - 467C】George and Job(dp,思维)
  3. 【2018ACM山东省赛 - G】Games(Nim博弈 + dp)
  4. 【ZOJ - 1163】The Staircases(dp)
  5. *【SGU - 114】Telecasting station (带权中位数 或 三分)
  6. 【PAT - 1014】福尔摩斯的约会(简单模拟)
  7. 【CF#468 div2 D. 】Peculiar apple-tree(思维)
  8. ubuntu 在线安装php,ubuntu在线安装LNMP
  9. matlab中云模型,云模型简介与个人理解matlab程序.doc
  10. java 中文 编译_java编译带中文是显示乱码的错误