最少

闻缺陷则喜何志丹15 天前
c++·算法·leetcode·力扣·交换·组合·最少
【C++ 滑动窗口】2134. 最少交换次数来组合所有的 1 IIC++算法:滑动窗口及双指针总结交换 定义为选中一个数组中的两个 互不相同 的位置并交换二者的值。 环形 数组是一个数组,可以认为 第一个 元素和 最后一个 元素 相邻 。 给你一个 二进制环形 数组 nums ,返回在 任意位置 将数组中的所有 1 聚集在一起需要的最少交换次数。 示例 1: 输入:nums = [0,1,0,1,1,0,0] 输出:1 解释:这里列出一些能够将所有 1 聚集在一起的方案: [0,0,1,1,1,0,0] 交换 1 次。 [0,1,1,1,0,0,0] 交换 1 次。 [
闻缺陷则喜何志丹3 个月前
c++·算法·二分查找·力扣·时间·最少·修车
【C++二分查找】2594. 修车的最少时间C++二分查找给你一个整数数组 ranks ,表示一些机械工的 能力值 。ranksi 是第 i 位机械工的能力值。能力值为 r 的机械工可以在 r * n2 分钟内修好 n 辆车。 同时给你一个整数 cars ,表示总共需要修理的汽车数目。 请你返回修理所有汽车 最少 需要多少时间。 注意:所有机械工可以同时修理汽车。 示例 1: 输入:ranks = [4,2,3,1], cars = 10 输出:16 解释:
闻缺陷则喜何志丹7 个月前
c++·算法·leetcode·排序·最大公约数·最少·被整除
【最大公约数 排序】2344. 使数组可以被整除的最少删除次数最大公约数 排序给你两个正整数数组 nums 和 numsDivide 。你可以从 nums 中删除任意数目的元素。 请你返回使 nums 中 最小 元素可以整除 numsDivide 中所有元素的 最少 删除次数。如果无法得到这样的元素,返回 -1 。 如果 y % x == 0 ,那么我们说整数 x 整除 y 。 示例 1: 输入:nums = [2,3,2,4,3], numsDivide = [9,6,9,3,15] 输出:2 解释: [2,3,2,4,3] 中最小元素是 2 ,它无法整除 num
闻缺陷则喜何志丹8 个月前
c++·算法·力扣·图论·最少·割点·传播
【图论】【割点】【C++算法】928. 尽量减少恶意软件的传播 II视频算法专题图论 割点给定一个由 n 个节点组成的网络,用 n x n 个邻接矩阵 graph 表示。在节点网络中,只有当 graph[i][j] = 1 时,节点 i 能够直接连接到另一个节点 j。 一些节点 initial 最初被恶意软件感染。只要两个节点直接连接,且其中至少一个节点受到恶意软件的感染,那么两个节点都将被恶意软件感染。这种恶意软件的传播将继续,直到没有更多的节点可以被这种方式感染。 假设 M(initial) 是在恶意软件停止传播之后,整个网络中感染恶意软件的最终节点数。 我们可以从
闻缺陷则喜何志丹1 年前
c++·数学·算法·leetcode·贪心·差分数组·最少
【数学】LeetCode1526: 形成目标数组的子数组最少增加次数【贪心算法】【中位贪心】.执行操作使频率分数最大数学给你一个整数数组 target 和一个数组 initial ,initial 数组与 target 数组有同样的维度,且一开始全部为 0 。 请你返回从 initial 得到 target 的最少操作次数,每次操作需遵循以下规则: 在 initial 中选择 任意 子数组,并将子数组中每个元素增加 1 。 答案保证在 32 位有符号整数以内。 示例 1: 输入:target = [1,2,3,2,1] 输出:3 解释:我们需要至少 3 次操作从 inti