​力扣解法汇总1827. 最少操作使数组递增

news/2024/7/7 21:05:55

 目录链接:

力扣编程题-解法汇总_分享+记录-CSDN博客

GitHub同步刷题项目:

https://github.com/September26/java-algorithms

原题链接:力扣


描述:

给你一个整数数组 nums (下标从 0 开始)。每一次操作中,你可以选择数组中一个元素,并将它增加 1 。

  • 比方说,如果 nums = [1,2,3] ,你可以选择增加 nums[1] 得到 nums = [1,3,3] 。

请你返回使 nums 严格递增 的 最少 操作次数。

我们称数组 nums 是 严格递增的 ,当它满足对于所有的 0 <= i < nums.length - 1 都有 nums[i] < nums[i+1] 。一个长度为 1 的数组是严格递增的一种特殊情况。

示例 1:

输入:nums = [1,1,1]
输出:3
解释:你可以进行如下操作:
1) 增加 nums[2] ,数组变为 [1,1,2] 。
2) 增加 nums[1] ,数组变为 [1,2,2] 。
3) 增加 nums[2] ,数组变为 [1,2,3] 。

示例 2:

输入:nums = [1,5,2,4,1]
输出:14

示例 3:

输入:nums = [8]
输出:0

提示:

  • 1 <= nums.length <= 5000
  • 1 <= nums[i] <= 104

解题思路:

* 解题思路:
* 使用sum来记录最小操作次数,使用current记录前一个数。
* current的规则是如果nums[i] > current则current = nums[i]
* 否则current = current+1;

代码:

public class Solution1827 {

    public int minOperations(int[] nums) {
        int sum = 0;
        int current = nums[0];
        for (int i = 1; i < nums.length; i++) {
            if (nums[i] > current) {
                current = nums[i];
            } else {
                current++;
                sum += (current - nums[i]);
            }
        }
        return sum;
    }

}


http://lihuaxi.xjx100.cn/news/396065.html

相关文章

linux 终端分屏工具 tmux

引言&#xff1a;我们在用 MobaXterm 的时候会 经常遇到窗口不够用的时候&#xff0c;而且切换窗口也比较费时间&#xff0c;所以就需要一个工具&#xff0c;一个终端窗口可以打开多个终端。 sudo apt-get install tmuxtmux输入tmux进入。 上下分屏&#xff1a;ctrl b 再按 &…

2022-2028中国军用EMI滤波器市场现状研究分析与发展前景预测报告

关于本文详情&#xff1a; 本文重点关注该行业中的领先企业&#xff0c;提供公司简介、产品图片和规格、产能、产量、价格、成本、收入和联系信息等信息&#xff0c;还对上游原材料、设备和下游消费者进行了分析。 本报告研究中国市场军用EMI滤波器的生产、消费及进出口情况&…

openEuler社区开源项目:CPDS(容器故障检测系统)介绍

容器故障检测系统 CPDS (Container Problem Detect System) 是由北京凝思软件股份有限公司&#xff08;以下简称“凝思软件”&#xff09;设计并开发的容器集群故障检测系统&#xff0c;该软件系统实现了对容器TOP故障、亚健康状态的监测与识别。 2022年11月&#xff0c;凝思软…

从BI到ABI,守正创新的思迈特软件持续推进国产BI产业创新

‍‍数据智能产业创新服务媒体——聚焦数智 改变商业近年来&#xff0c;国内外数字化转型加速渗透&#xff0c;企业客户已不再满足“用上”数据&#xff0c;能否“用好”数据、提升管理效率成为企业数字化转型的核心诉求。在提升企业管理效率的工具中&#xff0c;商业智能&…

ubuntu20安装android 同屏工具scrcpy

起初网上的资料是 sudo apt-get instll scrcpy 在ubuntu上安装完成后&#xff0c;连接手机&#xff0c;运行scrcpy&#xff0c;一直显示 $ scrcpy -m 400 INFO: scrcpy 1.12.1 <https://github.com/Genymobile/scrcpy> /usr/share/scrcpy/scrcpy-server: 1 fil...ed. 10…

大数据MapReduce学习案例:倒排索引

文章目录一&#xff0c;案例分析&#xff08;一&#xff09;倒排索引介绍&#xff08;二&#xff09;案例需求二&#xff0c;案例实施&#xff08;一&#xff09;准备数据文件&#xff08;1&#xff09;启动hadoop服务&#xff08;2&#xff09;虚拟机上创建文本文件&#xff0…

TFT显示模组是什么?tft显示模组有什么功能?

TFT显示模组的出现&#xff0c;让手机屏幕成为一种刚需。但随着技术的发展&#xff0c;越来越多的厂商开始推出折叠屏手机&#xff0c;这也意味着手机屏幕的形态正在发生变化。在此背景下&#xff0c;折叠屏手机市场迎来爆发期。根据中国信通院数据&#xff0c;2020年上半年&am…