【寻找符合要求的最长子串】python实现-附ChatGPT解析

1.题目

寻找符合要求的最长子串
时间限制:1s 空间限制: 256MB 限定语言:不限

题目描述:
给定一个字符串 s,找出这样一个子串:
1).该子串中的任意一个字符最多出现2次
2).该子串不包含指定某个字符
请你找出满足该条件的最长子串的长度

输入描述:
第一行为要求不包含的指定字符,为单个字符,取值范围[0-9、a-z、A-Z]第二行为字符串s,每个字符范围[0-9、a-z、A-Z],长度范围[1,10000]
输出描述:
一个整数,满足条件的最长子串的长度;如果不存在满足条件的子串,则返回0

示例1
输入:

D
ABC123
输出:
6
示例2
输入:

D
ABACA123D
输出:
7

2.题解

解题思路:

  1. 初始化子串的左边界 l 和结果变量 result 为0,同时创建一个字典 d 用于记录子串中字符出现的次数。
  2. 使用一个循环遍历输入字符串 s 中的每个字符。
  3. 当当前字符等于指定字符 c 时,清空字典 d

你可能感兴趣的:(python,华为od,最长子串)