C++学习之路 | PTA乙级—— 1003 我要通过! (20分)(精简)

1003 我要通过! (20分)

“答案正确”是自动判题系统给出的最令人欢喜的回复。本题属于 PAT 的“答案正确”大派送 —— 只要读入的字符串满足下列条件,系统就输出“答案正确”,否则输出“答案错误”。
得到“答案正确”的条件是:
字符串中必须仅有 P、 A、 T这三种字符,不可以包含其它字符;
任意形如 xPATx 的字符串都可以获得“答案正确”,其中 x 或者是空字符串,或者是仅由字母 A 组成的字符串;
如果 aPbTc 是正确的,那么 aPbATca 也是正确的,其中 a、 b、 c 均或者是空字符串,或者是仅由字母 A 组成的字符串。
现在就请你为 PAT 写一个自动裁判程序,判定哪些字符串是可以获得“答案正确”的。
输入格式:

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

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

8
PAT
PAAT
AAPATAA
AAPAATAAAA
xPATx
PT
Whatever
APAAATAA
输出样例:

YES
YES
YES
YES
NO
NO
NO
NO

#include<iostream>
#include<string>
using namespace std;
int main()
{int n;cin >> n;string str1;for (int i = 0; i < n; i++){cin >> str1;int p, t;//如果A,P,T其中一者不存在,输出NOif (str1.find('A') == string::npos || str1.find('P') == string::npos || str1.find('T') == string::npos){cout << "NO" << endl;continue;}int j;//如果存在其他字符,输出NOfor (j = 0; j < str1.size(); j++){if (str1[j] != 'A' && str1[j] != 'P' && str1[j] != 'T'){cout << "NO" << endl;break;}}p = str1.find('P');//第一个P的下标t = str1.find('T');//第一个T的下标//通过数学运算  : APAATAA 就是 1*2==2 下表加减就可以完成if (j == str1.size() && p * (t - p - 1) == str1.size() - (t + 1))cout << "YES" << endl;else if (j == str1.size() && p * (t - p - 1) != str1.size() - (t + 1))cout << "NO" << endl;}
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/497267.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

装修相片(第50天拍,全部,25号更新)

装修相片(第50天拍,全部,25号更新) 好不容易,找了个时间和相机,去把房子照了下来,因为准备要搬家了,怕搬家后乱乱的,没有了效果.1.厨房:厨柜700元/米,方太抽油烟机11902.客卧:3.主卧,富得宝,整套3480元.5.书房,书架(双虎),2300元.6.餐厅:7.沙发:3700元,这个一直觉得贵了.8.电视…

简明Python教程学习笔记_1_基本

参考&#xff1a;http://www.kuqin.com/abyteofpython_cn/index.html Learn Python in Y minutes&#xff1a;http://www.jianshu.com/p/1062bdd071cc python 部落&#xff1a;https://python.freelycode.com/ 简介 Python语言是少有的一种可以称得上即简单又功能强大的编程…

不止Alexa和AWS,揭秘亚马逊人工智能发展史

来源&#xff1a;腾讯科技编译&#xff1a;昱烨亚马逊上周四公布了2017年第四季度财报&#xff0c;盈利接近20亿美元&#xff0c;创下历史纪录。Alexa语音助手和AWS云计算服务是亚马逊业绩的亮点。《连线》杂志近日刊文&#xff0c;介绍了深度学习技术如何赋能Alexa和AWS&#…

C++学习之路 | PTA乙级—— 1004 成绩排名 (20分)(精简)

1004 成绩排名 (20分) 读入 n&#xff08;>0&#xff09;名学生的姓名、学号、成绩&#xff0c;分别输出成绩最高和成绩最低学生的姓名和学号。 输入格式&#xff1a; 每个测试输入包含 1 个测试用例&#xff0c;格式为 第 1 行&#xff1a;正整数 n 第 2 行&#xff1a;第…

Separate Query from Modifier(分离查询和修改)

某个函数既返回对象状态值&#xff0c;又修改对象状态 重构&#xff1a;建立两个不同的函数&#xff0c;其中一个负责查询&#xff0c;另一个负责修改 动机 如果某个函数只是向你提供一个值&#xff0c;没有任何看得到的副作用&#xff0c;那么这是个很有价值的东西。 你可以任…

MapX的坐标问题

我们知道&#xff0c;一个GIS开发包或者GIS平台&#xff0c;和一般的图形系统的差别就在于其管理的对象都是有空间参考&#xff08;或者叫地理参考&#xff09;的&#xff0c;简而言之&#xff0c;空间参考就是坐标系&#xff0c;但坐标系不是简单的笛卡尔坐标系&#xff0c;因…

简明 Python 教程学习笔记_2_函数

1. Python 内建函数 Python 内建函数&#xff1a;https://docs.python.org/zh-cn/3.9/library/functions.html#classmethod Python 解释器内置了很多函数和类型&#xff0c;您可以在任何时候使用它们。以下按字母表顺序列出它们。 内置函数 abs() delattr() hash() memo…

LaTeX2e类和包的设计(一)

LaTeX2e类和包的设计&#xff08;一&#xff09;一、类和包版本介绍LaTeX2.09对用户书写class和package提供的支持很少&#xff0c;用户不得不使用底层命令。LaTeX2e提供了许多用于组织package文件的高级命令&#xff0c;同时在已有class和package的基础上建立另一个class或pac…

C++学习之路 | PTA乙级—— 1005 继续(3n+1)猜想 (25分)(精简)

1005 继续(3n1)猜想 (25分) 卡拉兹(Callatz)猜想已经在1001中给出了描述。在这个题目里&#xff0c;情况稍微有些复杂。 当我们验证卡拉兹猜想的时候&#xff0c;为了避免重复计算&#xff0c;可以记录下递推过程中遇到的每一个数。例如对 n3 进行验证的时候&#xff0c;我们需…

python实现地牢迷宫生成

python实现地牢迷宫生成基本属性生成房间生成墙壁生成门口生成通道基本属性 定义当前地牢的等级&#xff0c;地图长宽&#xff0c;房间数量&#xff0c;房间的最小最大长度&#xff0c;如下 class Map:def __init__(self):self.width 30self.heigh 30self.level 1self.roo…

Parameterize Method(令函数携带参数)

若干函数做了类似的工作&#xff0c;但在函数体中却包含了不同的值 重构&#xff1a;建立单一函数&#xff0c;以参数表达那些不同的值。

「谷歌大脑」提出通过对长序列进行摘要提取,AI可自动生成「维基百科」

原文来源&#xff1a;arXiv作者&#xff1a;Peter J. Liu、Mohammad Saleh、Etienne Pot、Ben Goodrich、Ryan Sepassi、Łukasz Kaiser、Noam Shazeer「雷克世界」编译&#xff1a;嗯~阿童木呀最近&#xff0c;经过研究证明&#xff0c;生成英文维基百科&#xff08;English W…

redis基本用法学习(C#调用CSRedisCore操作redis)

除了NRedisStack包&#xff0c;csredis也是常用的redis操作模块&#xff08;从EasyCaching提供的常用redis操作包来看&#xff0c;CSRedis、freeredis、StackExchange.Redis应该都属于常用redis操作模块&#xff09;&#xff0c;本文学习使用C#调用CSRedis包操作redis的基本方式…

简明Python教程学习笔记_3_模块

模块 如果你想要在其他程序中重用很多函数&#xff0c;那么你该如何编写程序呢&#xff1f;你可能已经猜到了&#xff0c;答案是使用模块。模块基本上就是一个包含了所有你定义的函数和变量的文件。为了在其他程序中重用模块&#xff0c;模块的文件名必须以.py为扩展名。 pyt…

年轻的程序员该如何规划自己的未来

下面是网友良少给我的回信,觉得其中一些内容具有警世作用,征得良少本人同意后,特公开其回信-------------------------------------------------------------------------------------------------------------------------- 孝祥&#xff1a;您好&#xff01;非常感谢您的邀请…

C++学习之路 | PTA乙级—— 1006 换个格式输出整数 (15分)(精简)

1006 换个格式输出整数 (15分) 让我们用字母 B 来表示“百”、字母 S 表示“十”&#xff0c;用 12…n 来表示不为零的个位数字 n&#xff08;<10&#xff09;&#xff0c;换个格式来输出任一个不超过 3 位的正整数。例如 234 应该被输出为 BBSSS1234&#xff0c;因为它有 …

python: 使用socket实现局域网不同主机通信。解决ConnectionResetError: [WinError 10054] 远程主机强迫关闭了一个现有的连接。

目录1 socket的使用1.1 TCP方法1.2 UDP方法2 局域网内连接2.1总结1 socket的使用 1.1 TCP方法 在socket中使用socket.socket建立会话&#xff0c;如果是服务器&#xff0c;需要绑定服务器地址和端口号&#xff0c;然后进行循环监听&#xff0c;当有客户端连接时再接收数据。 …

Replace Parameter with Explicit Methods(以明确函数取代参数)

函数的行为&#xff0c;完全取决于参数值 public void setValue(final String name, final int value) {if ("height".equals(name)) {this.height value;return;}if ("width".equals(name)) {this.width value;return;}Assert.shouldNeverReachHere();…

德勤:2018年科技、传媒和电信行业未来趋势预测

来源&#xff1a;亿欧近日&#xff0c;德勤发布了《2018科技、传媒和电信行业预测》报告&#xff0c;对世界与中国的科技、传媒和电信行业在未来1-5年的趋势进行了预测。该报告通过与世界各国行业主管和评论家的数百场访谈及对世界各地数万名消费者进行的调查&#xff0c;分析了…

简明Python教程学习笔记_4_数据结构

在Python中有三种内建的数据结构——列表、元组和字典。 列表 list是处理一组有序项目的数据结构&#xff0c;即你可以在一个列表中存储一个 序列 的项目。假想你有一个购物列表&#xff0c;上面记载着你要买的东西&#xff0c;你就容易理解列表了。只不过在你的购物表上&…