LeetCode 2264. 字符串中最大的 3 位相同数字

LeetCode 2264. 字符串中最大的 3 位相同数字缩略图

给你一个字符串 num ,表示一个大整数。如果一个整数满足下述所有条件,则认为该整数是一个 优质整数 :

该整数是 num 的一个长度为 3 的 子字符串 。
该整数由唯一一个数字重复 3 次组成。
以字符串形式返回 最大的优质整数 。如果不存在满足要求的整数,则返回一个空字符串 “” 。

注意:

子字符串 是字符串中的一个连续字符序列。
num 或优质整数中可能存在 前导零 。

来源:力扣(LeetCode)
链接:https://leetcode.cn/problems/largest-3-same-digit-number-in-string
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

LeetCode 2264. 字符串中最大的 3 位相同数字插图
OpenCV步步精深-可心科创工作室

思路:直接用指针遍历就行了

class Solution:
    def largestGoodInteger(self, num: str) -> str:
        # 直接用指针

        p = 1
        tmp = num[0]
        count = 1
        result = []

        while p <= len(num) - 1:
            if num[p] == tmp:
                count += 1
                if count == 3:
                    result.append(int(num[p]))
                    count = 1
            else:
                tmp = num[p]
                count = 1

            p += 1
        
        if len(result) != 0:
            return str(max(result)) * 3
        else:
            return ""   
LeetCode 2264. 字符串中最大的 3 位相同数字插图1
OpenCV步步精深-可心科创工作室

更多干货见 OpenCV步步精深