力扣 1658. 将 x 减到 0 的最小操作数
发布日期:2021-05-10 18:39:24 浏览次数:11 分类:精选文章

本文共 2422 字,大约阅读时间需要 8 分钟。

���������������������������������������������������������������������������������������������������������������������������x������������������������������

  • ������������:

    • ������������������������������nums������������������x������������������������������������������������������������������������������nums���������������x���������������������������������������������������
  • ������������:

    • ������������: ���������������������������������total_sum������������������������target = total_sum - x������������������������������������������������target���
    • ������������������: ���������������������������������������������������������������������������������������������������������current_sum���������������������target���������������������������������������������
      • ������current_sum������target���������������������������������������������������current_sum������������target���
      • ������������current_sum������target���������������������������������������������
  • ������������:

    • ������������������total_sum������������������target = total_sum - x���
    • ������������������l=0������������r=0������������������current_sum=0���������������������max_len=-1���
    • ������������������������������������
      • ���nums[r]������current_sum���������current_sum������������target���������r���������
      • ������current_sum������target���������������������������������������������current_sum������������target���
      • ������current_sum������target������������������������������������������max_len���
    • ������������������������������������max_len>=0���������������������������������������������������������-1���
  • ������������:

    int minOperations(vector
    nums, int x) { int total_sum = 0; int target = 0; for (int num : nums) { total_sum += num; target = total_sum - x; } int max_len = -1, current_sum = 0, l = 0; int r = 0; while (r < nums.size()) { while (current_sum + nums[r] <= target) { current_sum += nums[r]; r++; } if (current_sum > target) { current_sum -= nums[l]; l++; } if (current_sum == target) { int length = r - l; if (length > max_len) { max_len = length; } } } return max_len;}
  • ������������������������������������������������������������������������������������������������������������������������������������������������������O(n)������������������������������������������

    上一篇:KMP字符串匹配算法代码(模板)
    下一篇:强化学习笔记

    发表评论

    最新留言

    逛到本站,mark一下
    [***.202.152.39]2025年04月11日 15时48分56秒