前言: 说真的 这个题我连题目都读不懂 我不知道具体原因是什么 可能是语文不好 可能是理解能力不行 此文章是看了别的大佬解题过程之后才写出来的 我觉得很有必要总结一下 -----分界线---- 补充: 在我写完这个题的代码之后 仍然觉得这个题的表述有问题 也就是这个题实现之后的条件 和题目给出的条件是不太一样的 算了 重点是学习其中有价值的东西
题目:

代码如下:
#include<iostream>
using namespace std;
#include<cstring>
int main()
{
int x = 0;
cin >> x; //输入的字符串个数
while (x--) //8 87654321 x是几 进去几次
{
int key = 0;
int Afront = 0, Amiddle = 0, Alater = 0; //state记录PAT 关键字 后面依次为前面 中间 后面的A的个数
int i = 0;
char arr[100];
cin >> arr;
for (i = 0; i < strlen(arr); i++)
{
// AAAPAAAATAAAAAAAA
if (arr[i] != 'P' && arr[i] != 'A' && arr[i] != 'T')
break;
if (arr[i] == 'P')
{
if (key == 0) //为什么是0就加 不是零就跳呢? 因为整个字符串只能有一个P 如果不是0 就代表出

本文记录了一道PAT乙级题目1003的理解过程,作者在阅读他人解题思路后进行了总结。文章指出题目的表述可能存在歧义,但强调了学习其中的编程技巧和算法思路的重要性。主要讨论了通过该题目的三个关键条件,并分享了在处理不定数量字符串输入、计算字符数组长度和检查字符串组成等方面的心得。
最低0.47元/天 解锁文章
273

被折叠的 条评论
为什么被折叠?



