Day23力扣打卡

打卡记录

将 x 减到 0 的最小操作数(逆向思维 + 滑动窗口)

链接

将 x 减到 0 的最小操作数,可以逆向思考,求一个数组中的最大长度的滑动窗口,来使得这个窗口里的数等于 全数组之和 - x 的值。

cpp 复制代码
class Solution {
public:
    int minOperations(vector<int> &nums, int x) {
        int target = accumulate(nums.begin(), nums.end(), 0) - x;
        if (target < 0) return -1;
        int ans = -1, sum = 0, n = nums.size();
        for (int i = 0, j = 0; i < n; ++i) {
            sum += nums[i];
            while (sum > target) sum -= nums[j++];
            if (sum == target) ans = max(ans, i - j + 1);
        }
        return ans < 0 ? -1 : n - ans;
    }
};
相关推荐
oioihoii14 小时前
C++异常安全保证:从理论到实践
开发语言·c++·安全
立志成为大牛的小牛14 小时前
数据结构——五十三、处理冲突的方法——拉链法(王道408)
数据结构·学习·考研·算法
吃着火锅x唱着歌14 小时前
LeetCode 3583.统计特殊三元组
算法·leetcode·职场和发展
FPGA_无线通信14 小时前
OFDM 频偏补偿和相位跟踪(2)
算法·fpga开发
SHOJYS15 小时前
思维难度较大 贪心优化背包 [USACO22DEC] Bribing Friends G
数据结构·算法·深度优先
啊董dong15 小时前
课后作业-2025年12月07号作业
数据结构·c++·算法·深度优先·noi
兵哥工控15 小时前
MFC PostMessage实现进度条实时更新实例
c++·mfc
李日灐15 小时前
C++STL:list(双链表)的底层实现 && 部分源码解析
开发语言·c++
无限进步_15 小时前
C语言宏的魔法:探索offsetof与位交换的奇妙世界
c语言·开发语言·windows·后端·算法·visual studio
Lucky“经营分析”15 小时前
经营分析师-《经营分析能力》
算法