当前位置:   article > 正文

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

华为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。

代码

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();
    }
}

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Guff_9hys/article/detail/1008817
推荐阅读
相关标签
  

闽ICP备14008679号