华为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();
    }
}
相关推荐
dazzle几秒前
Python数据结构(十):冒泡排序详解
数据结构·python·算法
平生不喜凡桃李7 分钟前
LeetCode:二叉树的最近公共祖先
算法·leetcode·职场和发展
czhaii10 分钟前
math.h数学函数库 ctype.h函数
c语言·c++·算法·机器学习
隐退山林14 分钟前
JavaEE初阶:多线程进阶
java·开发语言
JMchen12316 分钟前
Android剪切板工具类ClipBoardUtil:简化剪切板操作
android·java·移动开发·android studio
好学且牛逼的马20 分钟前
【Hot100|17-LeetCode 73. 矩阵置零 - 完整解法详解】
算法·leetcode·职场和发展
蒹葭玉树26 分钟前
【C++上岸】C++常见面试题目--操作系统篇(第二十七期)
java·c++·面试
进击的小头26 分钟前
IIR滤波器核心原理深化:从差分方程到工业级实现
c语言·python·算法
蜂蜜黄油呀土豆33 分钟前
深入解析Java虚拟机垃圾回收机制
java·jvm·cms·垃圾回收·g1
AllData公司负责人36 分钟前
【亲测好用】数仓建模平台能力演示
大数据·数据库·算法