题目链接
代码思路详见博客
思路解析
这道题是根据题目所给条件来找出其隐藏的
数学规律
当然这里还没有涉及到太过复杂的数学公式,只是找出其变量关系
- 第一个条件很显然就是直接判断,并且可以一开始直接判断,省去部分时间。
- 第二第三个条件可以综合起来观察,而这个观察的结果也就是解决这道题最核心的地方
- 首先
PAT符合,若b为空,要符合则a和c必相等以满足xPATx即a = c- 如果
b不为空,判断aPbATc是否符合可以从P和A之间每去掉一个A,就计算一次c-a,直到P和A之间只剩下一个A,如果这时满足条件2即a = c,那么符合,否则不符合。- 如
AAPAATAAAAA,P和A之间去掉一个A,c-a之后c变成AAA,并不等于a,所以不符合。
- 综上可知
(c/a)-1即为c要减多少次a才能与a相等,而此时P与T之间应当只有一个A,故可得出关系式c/a = b + 1同理于式a*(b+1) = c
这一题所有的关键就在这个公式得推导了,之后就没啥问题了
本文深入探讨了PAT模式匹配算法的实现原理,通过分析题目条件,提炼出关键的数学规律。详细解释了如何通过变量关系判断字符串是否符合PAT模式,包括直接判断条件和核心的公式推导过程,为读者提供了清晰的解题思路。
2475

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



