华为od(D卷) 环中最长子串/字符成环找偶数

文章目录

题目描述

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

输入描述

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

备注

1 <= s.length <= 5 x 10^5

s 只包含小写英文字母

输出描述

输出是一个整数

示例1

输入

alolobo
输出

6

示例2

输入

looxdolx
输出

7

示例3

输入

bcbcbc
输出

6

思路

如果'o' 是偶数, 最长子串就是本身

如果'o' 是奇数, 环在o处断开,减少一个'o', 最长子串就是字符串长度-1。

代码

java 复制代码
public class Demo12 {

    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        while (in.hasNext()) {
            String s = in.nextLine();
            int num = 0;
            for (int i = 0; i < s.length(); i++) {
                if (s.charAt(i) == 'o') {
                    num++;
                }

            }
            if (num % 2 == 0) {
                System.out.println(s.length());
            } else {
                System.out.println(s.length() - 1);
            }

        }


        in.close();
    }
}
相关推荐
J_liaty5 分钟前
基于ip2region.xdb数据库从IP获取到属地解析全攻略
java·网络·后端
高洁015 分钟前
AIGC技术与进展(1)
深度学习·算法·机器学习·transformer·知识图谱
未来之窗软件服务6 分钟前
计算机等级考试——二叉树考点和坑——东方仙盟
算法·二叉树·计算机软考·仙盟创梦ide·东方仙盟
沛沛老爹11 分钟前
Web转AI架构篇:Agent Skills vs MCP-混合架构设计模式实战指南
java·前端·人工智能·架构·llm·rag
张张努力变强18 分钟前
C++类和对象(一):inline函数、nullptr、类的定义深度解析
开发语言·前端·jvm·数据结构·c++·算法
独自破碎E19 分钟前
Java的CMS垃圾回收流程
java·开发语言
oioihoii25 分钟前
C++线程编程模型演进:从Pthread到jthread的技术革命
java·开发语言·c++
且去填词38 分钟前
深入理解 GMP 模型:Go 高并发的基石
开发语言·后端·学习·算法·面试·golang·go
醇氧1 小时前
SqlLogInterceptor mybatis配置打印SQL
java·sql·mybatis
Elcker1 小时前
JAVA-Web 项目研发中如何保持团队研发风格的统一
java·前端·javascript