【华为OD机试】非严格递增连续数字序列 (C++ Python Java)2023 B卷

 

时间限制:C/C++ 1秒,其他语言 2秒

空间限制:C/C++262144K,其他语言524288K

64bit IO Format:%lld

题目描述:
输入一个字符串仅包含大小写字母和数字,求字符串中包含的最长的非严格

递增连续数字序列的长度(比如12234属于非严格递增连续数字序列)。

输入描述:
输入一个字符串仅包含大小写字母和数字,输入的字符串最大不超过255个字符。

输出描述:
最长的非严格递增连续数字序列的长度

示例1:
输入

abc2234019A334bc

输出

4

说明:

2234为最长的非严格递增连续数字序列,所以长度为4

用例2:
输入

aaaaaa44ko543j123j7345677781

输出

8

考点
滑动窗口
 

代码

python

str=input()
n=len(str)
left=0
res=0
for i in range(n):
    if str[i].isalpha():
        left=i+1
        continue
    elif str[i].isdigit():
        if i==0 or str[i]>=str[i-1]:
            res=max(res,i-left+1)
        else:
            left=i
print(res)

 

你可能感兴趣的:(华为od机试2023B卷,华为od,c++,开发语言)