Python 在字符串中查找编程问题
pythonserver side programmingprogramming更新于 2025/12/26 6:36:17
假设我们有一个小写字符串 s,我们必须检查是否有可能在 s 中选择一些字符子序列,使得 − 1. 字符的任意两个连续索引的差值相同 2. 字符组成字符串"programmingquestion"
因此,如果输入类似"pzrzozgzrzazmzmziznzgzqzuzezsztzizozn",则输出将为 True
要解决这个问题,我们将遵循以下步骤 −
- p := 存在 p 的索引数组
- r := 存在 r 的索引数组
- 对于 p 中的每个 j,执行
- 对于 r 中的每个 k,执行
- 如果 k > j,则
- 如果"programmingquestion"在 s 的子字符串中,从索引 j 到 s 的大小,跳过 k-j 个字符,然后
- 返回 True
- 如果"programmingquestion"在 s 的子字符串中,从索引 j 到 s 的大小,跳过 k-j 个字符,然后
- 如果 k > j,则
- 对于 r 中的每个 k,执行
- 返回 False
让我们看看下面的实现以便更好地理解 −
示例
class Solution: def solve(self, s): p = [i for i, c in enumerate(s) if c == "p"] r = [i for i, c in enumerate(s) if c == "r"] for j in p: for k in r: if k > j: if "programmingquestion" in s[j:len(s):k-j]: return True return False ob = Solution() s = "pzrzozgzrzazmzmziznzgzqzuzezsztzizozn" print(ob.solve(s))
输入
"pzrzozgzrzazmzmziznzgzqzuzezsztzizozn"
输出
True
相关文章
有用资源
python 参考教程 - 该教程包含有关 python 的更多信息:https://www.cainiaomax.com/python/

