2024华为OD机试真题-最长子字符串的长度(一)-C++-OD统一考试(C卷D卷)

题目描述

给你一个字符串 s,首尾相连成一个环形,请你在环中找出 'o' 字符出现了偶数次最长子字符串的长度。

输入描述

输入是一个小写字母组成的字符串

输出描述

输出是一个整数

备注

1 ≤ s.length ≤ 500000

s 只包含小写英文字母

用例1

输入

alolobo

输出

6

说明

最长子字符串之一是 "alolob",它包含2个'o'

用例2

输入

looxdolx

输出

7

说明

最长子字符串之一是 "oxdolxl",它包含2个'o'。

因为字符串首尾相连

用例3

输入

abcdefg

输出

7

考点

逻辑思维

代码

cpp 复制代码
str=input()
cnt=0 #统计'o'的个数
res=len(str)

for i in str:
    if i=='o':
        cnt+=1
if cnt%2!=0:
    res=res-1

print(res)
相关推荐
感哥13 小时前
C++ 面向对象
c++
沐怡旸14 小时前
【底层机制】std::shared_ptr解决的痛点?是什么?如何实现?如何正确用?
c++·面试
感哥21 小时前
C++ STL 常用算法
c++
saltymilk1 天前
C++ 模板参数推导问题小记(模板类的模板构造函数)
c++·模板元编程
感哥1 天前
C++ lambda 匿名函数
c++
沐怡旸2 天前
【底层机制】std::unique_ptr 解决的痛点?是什么?如何实现?怎么正确使用?
c++·面试
感哥2 天前
C++ 内存管理
c++
博笙困了2 天前
AcWing学习——双指针算法
c++·算法
感哥2 天前
C++ 指针和引用
c++
感哥2 天前
C++ 多态
c++