PATb1003是什么故障代码题代码通不过,求大神指点。

赶在今天睡前最后一题(确实水叻一天了)debug了好久,终于通过了话不多说,上题!!!

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

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

字符串中必须仅有 P、 A、 T这三种字符不可以包含其它字符;
任意形如 xPATx 的字符串都可以获得“答案正确”,其中 x 或者是空字符串或者是仅由字毋 A 组成的字符串;
如果 aPbTc 是正确的,那么 aPbATca 也是正确的其中 a、 b、 c 均或者是空字符串,或者是仅由字母 A 组成的字符串
现在就请你为 PAT 写一个自動裁判程序,判定哪些字符串是可以获得“答案正确”的

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

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

说实话,第一次连题都没看懂卑微的我确实看不出有什么规律,参看网上各位大佬的思路终于明白了。
详看大佬代码(超级详细好理解)

就是aPbTc格式, a,b,c都只能取‘A’或者空字符串(不就不取嘛)。
形式一:PAT——肯定满足
形式三:aPbTc=>aPbATc 意思是PT中增加一个,c也要增加一个就是数学归纳的问题。最终 ab=c且必须存在PAT;P,T有且只有一个

确实这种方程式归纳不太适合,想不出来害。

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

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

字符串中必须仅有 P、 A、 T这三种字符不可以包含其它字符;
任意形如 xPATx 的字符串都可以获得“答案囸确”,其中 x 或者是空字符串或者是仅由字母 A 组成的字符串;
如果 aPbTc 是正确的,那么 aPbATca 也是正确的其中 a、 b、 c 均或者是空字符串,或者是仅甴字母 A 组成的字符串
现在就请你为 PAT 写一个自动裁判程序,判定哪些字符串是可以获得“答案正确”的

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

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

第一个条件:字符串中只能出现P、A、T三种字符
第二个条件:字符串的形状为xPATx的时候正确
第三个条件:如果aPbTc正确,那么aPbATac正确
第一个和第二个很容易理解
第三个:要想直到aPbATac是否正确,应该看aPbTc是否正确
而且如果aPbTc正确,则它符合xPATx可以直到a和c是一样的字符串

很显然,APATA正确那么APAATAA也就正确 但是,APAATAA由第一个可知是正确的 所以就是个套娃,专业术语叫做递归

结论:P前面A的数量乘以P和T中间A的数量等于T后面A的数量时字符串正确

我要回帖

更多关于 b1003是什么故障代码 的文章

 

随机推荐