码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 【华为OD题库C卷-001】山脉的个数


    题目

    给定一个数组,数组中的每个元素代表该位置的海拔高度。0表示平地,>=1时表示属于某个山峰,山峰的定义为当某个位置的左右海拔均小于自己的海拔时,该位置为山峰。数组起始位置计算时可只满足一边的条件。
    输入描述
    —个整数数组
    输出描述
    输出符合条件的山峰的个数
    示例1:
    输入:
    [0,1,2,3,2,4]
    输出:
    2
    示例2:
    输入:
    [3,0,3,4,1]
    输出:
    2

    思路

    此题简单,直接循环比较每个点的前后位置是否均小于它即可。需要注意,虽然题目描述的是“数组起始位置计算时可只满足一边的条件”,根据示例1,其实在终止位置也符合这一规律。通过“或”操作短路判断边界的情况

    题解

    package hwodC;
    
    import java.util.Arrays;
    import java.util.Scanner;
    
    public class ValidMountainCount_001 {
        public static void main(String[] args) {
            Scanner sc = new Scanner(System.in);
            String inputs = sc.nextLine();
            int[] nums = Arrays.stream(inputs.substring(1, inputs.length() - 1).split(",")).mapToInt(Integer::parseInt).toArray();
            System.out.println(validMountainCount(nums));
    
        }
    
        private static int validMountainCount(int[] nums) {
            int res = 0;
            for (int i = 0; i < nums.length; i++) {
                if ((i == 0 || nums[i] > nums[i - 1]) && (i == nums.length - 1 || nums[i] > nums[i + 1])) {
                    res++;
                }
            }
            return res;
        }
    }
    
    

    推荐

    如果你对本系列的其他题目感兴趣,可以参考华为OD机试真题及题解(JAVA),查看当前专栏更新的所有题目。

    说明

    本专栏所有文章均为原创,欢迎转载,请注明文章出处:https://blog.csdn.net/qq_31076523/article/details/134176793。百度和各类采集站皆不可信,搜索请谨慎鉴别。技术类文章一般都有时效性,本人习惯不定期对自己的博文进行修正和更新,因此请访问出处以查看本文的最新版本。

  • 相关阅读:
    echarts 设置 折线图
    C Primer Plus(6) 中文版 第3章 数据和C 3.6 参数和陷阱
    苹果被迫弃用 Lightning?欧盟宣布 2024 年 Type-C 将 “一统天下”
    Android音视频——OMX 中 Nodeinstance 列表的管理与节点的操作
    游戏“羊了个羊”火爆天际背后的秘密
    城市消费券,拒绝恶意爬取
    【数据结构】初探时间与空间复杂度:算法评估与优化的基础
    illustrator插件-画板功能开发-全部页面加矩形-垂直两分-水平两分-AI插件
    Java项目实战《苍穹外卖》 二、项目搭建
    SpringMVC : 常用注解载入的方式和处理的方式
  • 原文地址:https://blog.csdn.net/qq_31076523/article/details/139604588
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号