华为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();
    }
}
相关推荐
超级大只老咪14 小时前
数组相邻元素比较的循环条件(Java竞赛考点)
java
hh随便起个名14 小时前
力扣二叉树的三种遍历
javascript·数据结构·算法·leetcode
小浣熊熊熊熊熊熊熊丶14 小时前
《Effective Java》第25条:限制源文件为单个顶级类
java·开发语言·effective java
毕设源码-钟学长14 小时前
【开题答辩全过程】以 公交管理系统为例,包含答辩的问题和答案
java·eclipse
啃火龙果的兔子14 小时前
JDK 安装配置
java·开发语言
星哥说事14 小时前
应用程序监控:Java 与 Web 应用的实践
java·开发语言
派大鑫wink14 小时前
【JAVA学习日志】SpringBoot 参数配置:从基础到实战,解锁灵活配置新姿势
java·spring boot·后端
xUxIAOrUIII15 小时前
【Spring Boot】控制器Controller方法
java·spring boot·后端
Dolphin_Home15 小时前
从理论到实战:图结构在仓库关联业务中的落地(小白→中级,附完整代码)
java·spring boot·后端·spring cloud·database·广度优先·图搜索算法
醇氧15 小时前
org.jetbrains.annotations的@Nullable 学习
java·开发语言·学习·intellij-idea