华为OD机试真题 Java 实现【非严格递增连续数字序列】【2022Q4 100分】

news2025/2/14 2:54:19

在这里插入图片描述

一、题目描述

输入一个字符串仅包含大小写字母和数字,求字符串中包含的最长的非严格递增连续数字序列的长度,比如122889属于非严格递增连续数字序列。

二、输入描述

输入一个字符串仅包含大小写字母和数字,输入的字符串最大不超过255个字符。

三、输出描述

最长的非严格递增连续数字序列的长度。

四、解题思路

题目要求找出字符串中最长的非严格递增连续数字序列的长度。非严格递增连续数字序列是指数字序列中的数字按照非严格递增(可以相等)的顺序连续出现。

算法流程:

  1. 读取输入的字符串 str;
  2. 如果字符串的长度为1且该字符为数字,则直接输出1,并结束程序;
  3. 初始化布尔变量 flag 为 false,表示字符串中是否包含数字;
  4. 将字符串转换为字符数组 c,获取字符串的长度 size;
  5. 初始化变量 max 和 length 为 1,分别表示当前的最大长度和当前遍历的连续数字序列长度;
  6. 遍历字符数组 c,从索引 1 开始。
    • 如果当前字符或前一个字符是数字,则将 flag 设置为 true;
    • 如果前一个字符不大于当前字符且当前字符是数字,则说明当前字符属于连续数字序列,将 length 自增。
      • 如果 length 大于 max,则更新 max 的值为 length;
      • 继续下一次循环。
    • 如果不满足上述条件,说明当前字符不属于连续数字序列,将 length 重置为 1。
  7. 判断 flag 的值,如果为 true,说明字符串中包含数字,输出 max,表示最长的非严格递增连续数字序列的长度;
  8. 如果 flag 的值为 false,说明字符串中不包含数字,输出 0;
  9. 结束程序。

五、Java算法源码

public static void main(String[] args) {
    Scanner in = new Scanner(System.in);
    while (in.hasNext()) {
        String str = in.nextLine();
        // 如果字符串的长度为1且该字符为数字,则直接输出1,并结束程序
        if (str.length()==1&&str.charAt(0)>='0'&&str.charAt(0)<='9'){
            System.out.println(1);
            continue;
        }

        // 字符串中是否包含数字
        boolean flag = false;
        // 将字符串转换为字符数组 c
        char[] c = str.toCharArray();
        // 获取字符串的长度 size
        int size = str.length();
        // 当前的最大长度
        int max = 1;
        // 当前遍历的连续数字序列长度
        int length = 1;
        for (int i = 1; i < size ; i++) {
            // 如果当前字符或前一个字符是数字,则将 flag 设置为 true
            if ((c[i - 1] >= '0' && c[i - 1] <= '9') || (c[i] >= '0' && c[i] <= '9')) {
                flag = true;
            }

            // 如果前一个字符不大于当前字符且当前字符是数字,则说明当前字符属于连续数字序列,将 length 自增。
            if (c[i-1] <= c[i]&&c[i-1]>='0'&&c[i]<='9') {
                length++;
                // 如果 length 大于 max,则更新 max 的值为 length
                if (length > max) {
                    max = length;
                }
                continue;
            } else {
                // 如果不满足上述条件,说明当前字符不属于连续数字序列,将 length 重置为 1
                length = 1;
            }

        }
        if (flag) {
            // 最长的非严格递增连续数字序列的长度
            System.out.println(max);
        } else {
            System.out.println(0);
        }
    }
}

六、效果展示

在这里插入图片描述


🏆本文收录于,华为OD机试(JAVA)真题(A卷+B卷)

每一题都有详细的答题思路、详细的代码注释、样例测试,订阅后,专栏内的文章都可看,可加入华为OD刷题群(私信即可),发现新题目,随时更新,全天CSDN在线答疑。

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/645385.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Windows和MacOS平台上发现多个Zoom漏洞,已发布补丁

最新的Zoom漏洞列表已经出来了&#xff0c;其中几个漏洞的严重程度非常高。此次发布的补丁针对六个漏洞。 这些漏洞几乎影响了所有的Windows客户端&#xff0c;而有两个是在MacOS平台发现的。它们的严重程度各不相同&#xff0c;有可能被攻击者利用&#xff0c;以获得未经授权…

有没有哪个瞬间,让你突然对ChatGPT感到失望? | AIGC实践

不知道你是否和我一样&#xff0c;在第一次使用ChatGPT输入Prompt&#xff0c;并得到答复的那一刻&#xff0c;都会忍不住地赞叹一句&#xff1a;握草。 但随着时间慢慢拉长&#xff0c;体验不断深入&#xff0c;想法也会慢慢改变…… 主题图 by Midjourney。Prompt&#xff1a…

【道友避坑】CUB数据集转yolov5格式

写在前面&#xff1a;最近我拿到一个CUB_200_2011鸟类训练模型&#xff0c;但是我想将他转为yolov的格式进行应用。看了些其他博主博客后&#xff0c;发现跳跃性有些强。再此记录转换过程&#xff0c;希望各位道友修得此法后&#xff0c;能有所收获&#xff01; 一、获取数据集…

PCA算法

文章目录 1. 数据降维2. PCA原理2.1 基变换2.2 方差2.3 协方差2.4 协方差矩阵2.5 协方差矩阵对角化 3. PCA算法流程4. PCA算法的特点5. PCA算法的Python应用6. 源码仓库地址 1. 数据降维 在许多领域的研究与应用中&#xff0c;通常需要对含有多个变量的数据进行观测&#xff0…

免费AI编程工具- AWS CodeWhisperer安装(IDEA)

一、介绍 CodeWhispere介绍&#xff1a;可以根据IDE中的注释或者现有的一些提示、代码&#xff0c;来生成代码段或者建议。支持多种编程语言&#xff0c;可以和常用的IDE进行无缝集成。和GitHub Copilot和Cursor不同&#xff0c;个人使用是完全免费的&#xff0c;没有门槛。 …

极致呈现系列之:Echarts柱状图的创意设计与数字美学的完美平衡

先看下最终效果 目录 数字之美&#xff1a;Echarts柱状图的基础应用形色俱佳&#xff1a;Echarts柱状图的样式美化与创意设计独具匠心&#xff1a;Echarts柱状图的柱体形状自定义动感十足&#xff1a;Echarts柱状图的交互动画实现数字排序的艺术&#xff1a;Echarts柱状图的数…

《机器学习公式推导与代码实现》-chapter7决策树

《机器学习公式推导与代码实现》学习笔记&#xff0c;记录一下自己的学习过程&#xff0c;详细的内容请大家购买作者的书籍查阅。 决策树 决策树&#xff08;decision tree&#xff09;基于特征对数据实例按照条件不断进行划分&#xff0c;最终达到分类或回归的目的。 本章作…

React中几种编写弹窗的方式

方式一:按钮与弹窗封装成一个组件 将按钮和弹窗封装成一个组件&#xff0c;可以大大提高 React 代码的可重用性、可维护性和可扩展性。以下是示例代码&#xff1a; import React, { useState } from "react"; import { Button, Modal } from "antd";const …

django中的请求和响应

目录 请求和响应定义请求请求的样子案例常见的请求方法 django中的请求HttpRequest 常见属性 django的响应响应的内容content响应的状态码响应类型content-type常见的响应对象 请求和响应定义 请求 请求的样子案例 常见的请求方法 HTTP&#xff08;超文本传输协议&#xff09…

中国市场成为高阶智驾战略高地,博世/安波福包揽四项大奖

高工智能汽车研究院监测数据显示&#xff0c;2022年度中国市场&#xff08;不含进出口&#xff09;乘用车前装标配搭载辅助驾驶&#xff08;L0-L2&#xff09;交付1001.22万辆&#xff0c;首次突破千万辆规模&#xff0c;同时&#xff0c;前装搭载率也首次突破50%大关。 此外&a…

【数据分享】1901-2021年1km分辨率逐月总降水栅格数据(全国/分省/免费获取)

气象指标在日常研究中非常常用&#xff0c;之前我们给大家分享过来源于国家青藏高原科学数据中心提供的1901-2021年1km分辨率逐月平均气温栅格数据和1901-2021年1km分辨率的逐月最高气温栅格数据&#xff08;可查看之前的文章获悉详情&#xff09;&#xff01; 本次我们继续分…

建造者模式(八)

不管怎么样&#xff0c;都要继续充满着希望 上一章简单介绍了原型模式(七), 如果没有看过, 请观看上一章 一. 建造者模式 引用 菜鸟教程里面的建造者模式介绍: https://www.runoob.com/design-pattern/builder-pattern.html 建造者模式&#xff08;Builder Pattern&#xff…

企业自动化解决方案 - RPA

下方查看历史精选文章 重磅发布 - 自动化框架基础指南pdfv1.1大数据测试过程、策略及挑战 测试框架原理&#xff0c;构建成功的基石 在自动化测试工作之前&#xff0c;你应该知道的10条建议 在自动化测试中&#xff0c;重要的不是工具 什么是RPA&#xff1f; RPA指的是机器人流…

手势识别系统Python,基于卷积神经网络算法

一、介绍 手势识别系统&#xff0c;使用Python作为主要开发语言&#xff0c;基于深度学习TensorFlow框架&#xff0c;搭建卷积神经网络算法。并通过对数据集进行训练&#xff0c;最后得到一个识别精度较高的模型。并基于Django框架&#xff0c;开发网页端操作平台&#xff0c;…

Elasticsearch:数据摄取中的使用指南

数据摄取是利用 Elasticsearch 的全部潜力进行高效搜索和分析的关键步骤。 在本文中&#xff0c;我们将探讨几个常用的基本实践&#xff0c;以确保将无缝且有效的数据摄取到 Elasticsearch 中。 通过遵循这些指南&#xff0c;你可以优化数据摄取流程&#xff0c;并在你的部署中…

还在为618电商推送方案烦恼?我们帮你做好了!

618是每年重要的电商大促活动&#xff0c;热度高流量大&#xff0c;是电商App吸引新用户&#xff0c;提高用户转化率(购买率)的最好时机。对电商App运营来说&#xff0c;消息推送是不可忽略的流量来源之一&#xff0c;适当的消息推送可以召回用户&#xff0c;提高用户复购率。如…

Tigers Global Logistics EDI 需求及SaaS解决方案

Tigers Global Logistics 是一家国际物流公司&#xff0c;总部位于香港&#xff0c;成立于1998年。该公司提供全球物流服务&#xff0c;包括仓储、运输、海关通关、电商物流等。Tigers Global Logistics 在全球范围内拥有超过70个仓库和物流中心&#xff0c;并在美国、欧洲、亚…

Spring MVC入门笔记

Spring MVC基础知识 1. 创建web应用 新建Maven项目 点击File -> Project Structure -> Facets -> 号 -> Web 修改文件描述符路径为硬盘:\项目名\src\main\存储页面的文件夹&#xff08;如&#xff1a;webapp&#xff09;\WEB-INF\web.xml 修改Web页面路径为硬盘…

领域建模之数据模型设计方法论

本文通过实际业务需求场景建模案例&#xff0c;为读者提供一种业务模型向数据模型设计的方法论&#xff0c;用于指导实际开发中如何进行业务模型向数据模型转化抽象&#xff0c;并对设计的数据模型可用性、扩展性提供了建议性思考。通过文章&#xff0c;读者可以收获到业务模型…

打造高效采购系统,提升企业采购效率

随着市场竞争的日益激烈&#xff0c;企业采购效率的重要性越来越凸显。采购系统作为企业采购的核心环节&#xff0c;是提升采购效率的关键。因此&#xff0c;打造高效采购系统是企业发展的必要条件。本文将围绕打造高效采购系统&#xff0c;提升企业采购效率展开讨论。 一、采购…