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

1658. 将 x 减到 0 的最小操作数

目录

  • 一、题目
  • 二、思路
    • 2.1 解题思路
    • 2.2 代码尝试
    • 2.3 疑难问题
  • 三、解法
  • 四、收获
    • 4.1 心得
    • 4.2 举一反三

一、题目

在这里插入图片描述

二、思路

2.1 解题思路

2.2 代码尝试

2.3 疑难问题

三、解法

class Solution {
public:
    int minOperations(vector<int>& nums, int x) {
        int n = nums.size();
        int sum = accumulate(nums.begin(), nums.end(), 0);

        if (sum < x) {
            return -1;
        }

        int right = 0;
        int lsum = 0, rsum = sum;
        int ans = n + 1;

        for (int left = -1; left < n; ++left) {
            if (left != -1) {
                lsum += nums[left];
            }
            while (right < n && lsum + rsum > x) {
                rsum -= nums[right];
                ++right;
            }
            if (lsum + rsum == x) {
                ans = min(ans, (left + 1) + (n - right));
            }
        }

        return ans > n ? -1 : ans;
    }
};

四、收获

4.1 心得

4.2 举一反三


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

相关文章:

  • 代码随想录第五十天| 图论理论基础
  • Java集合框架之Collections工具类
  • 人工智能之数学基础:线性代数中的行列式的介绍
  • Node.js 报错 ENOBUFS 处理方案
  • Manus AI:从爆火到争议,AI Agent的未来之路
  • 服务器分区调整方案(不影响服务)
  • 网络安全规划重安全性需求
  • MySQL 连接报错: “Public Key Retrieval is not allowed“ 问题解决方案
  • Ubuntu 下 nginx-1.24.0 源码分析 - ngx_init_cycle 函数
  • PPT 小黑第21套
  • 【AI赋能】AI 工具生成视频教材:从创意到成品的全流程指南
  • 扩展------项目中集成阿里云短信服务
  • vLLM + Open-WebUI 本地私有化部署 DeepSeek-R1-Distill-Qwen-32B 方案
  • 深入解析PHP性能瓶颈:识别与优化策略
  • element-ui popover 组件源码分享
  • 安装与配置 STK-MATLAB 接口
  • 红果短剧安卓+IOS双端源码,专业短剧开发公司
  • git push报错【remote: You are not allowed to push code to this project.】解决办法
  • Leetcode 刷题记录 03 —— 滑动窗口
  • 进程存储相关的关键数据结构