当前位置: 首页 > article >正文

祝福语【算法赛】

题目来源:第 27 场 蓝桥入门赛【算法题】

可以参考一下,本人也是比较菜

不喜勿喷,求求求

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        String S = sc.nextLine();
        int max=0;
        int count=0;
        for (int i = 0; i < S.length(); i++) {
            if(S.charAt(i)=='a'){
                count++;
               max=Math.max(count,max);
              //  计算S中最多有多少个连续的a
            }
            else count=0;
        }
        for (int i = 0; i <= max; i++) {
            System.out.print('a');
        }
    }
}

分析

  1. 输入处理:

     Scanner sc = new Scanner(System.in);
     String S = sc.nextLine();

    这两行代码用于从标准输入读取一个字符串 SS

  2. 初始化变量:

     int max = 0;
     int count = 0;

    变量 max 用于记录字符串 SS 中连续出现的最多的 ‘a’ 的个数。变量 count 用于计数当前连续出现的 ‘a’ 的个数。

  3. 遍历字符串 S*S*:

     for (int i = 0; i < S.length(); i++) {
         if (S.charAt(i) == 'a') {
             count++;
             max = Math.max(count, max);
             // 计算S中最多有多少个连续的'a'
         } else {
             count = 0;
         }
     }

    这个循环遍历字符串 SS,检查每个字符是否为 ‘a’。如果是 ‘a’,则增加 count 并更新 maxcountmax 中的较大值。如果不是 ‘a’,则将 count 重置为 0。

  4. 输出结果:

     for (int i = 0; i <= max; i++) {
         System.out.print('a');
     }

    这个循环输出 max + 1 个 ‘a’。这是因为我们需要确保输出的字符串 TT 不是 SS 的子串,而 SS 中最多有 max 个连续的 ‘a’,所以输出 max + 1 个 ‘a’ 可以保证 TT 不是 SS 的子串。

总结

这段代码通过计算字符串 SS 中连续出现的最多的 ‘a’ 的个数,并输出比这个数量多一个的 ‘a’ 字符串作为 TT,从而保证了 TT 不是 SS 的子串,并且是字典序最小的可能字符串。

有更好的方法欢迎留言和交流


http://www.kler.cn/a/578551.html

相关文章:

  • Conda常用命令汇总
  • 2020CVPR速读:SiamBAN,用于视觉跟踪的Siamese框自适应网络
  • Ubuntu工控卫士在制造企业中的应用案例
  • Python深度学习算法介绍
  • 聊一聊 Android 的消息机制
  • Aws batch task 无法拉取ECR 镜像unable to pull secrets or registry auth 问题排查
  • 开源项目介绍:Native-LLM-for-Android
  • 大模型量化技术原理总结 [吃果冻不吐果冻皮]
  • 设计模式 - 工厂模式 精准梳理精准记忆
  • E2-13.找单词(dfs)
  • 分布式ID生成方案:数据库号段、Redis与第三方开源实现
  • 10个实用IntelliJ IDEA插件
  • Linux(Centos 7.6)命令详解:vi
  • Apache SeaTunnel 人物专访 | 张东浩:从使用者到Committer的开源历程
  • 力扣刷题167. 两数之和 II - 输入有序数组
  • 极验三代推理验证码逆向分析
  • 11套!量产15W~1000W开关电源电路全套方案资料合集!
  • 什么是hive
  • 利用EasyCVR平台打造化工园区视频+AI智能化监控管理系统
  • suricata安装测试