🗒️2453. 摧毁一系列目标
2024-12-9
| 2024-12-9
0  |  阅读时长 0 分钟
type
status
date
slug
summary
tags
category
icon
password
创建时间
Dec 9, 2024 02:34 AM
给你一个下标从 0 开始的数组 nums ,它包含若干正整数,表示数轴上你需要摧毁的目标所在的位置。同时给你一个整数 space 。
你有一台机器可以摧毁目标。给机器 输入 nums[i] ,这台机器会摧毁所有位置在 nums[i] + c * space 的目标,其中 c 是任意非负整数。你想摧毁 nums 中 尽可能多 的目标。
请你返回在摧毁数目最多的前提下,nums[i] 的 最小值 。
  • 1 <= nums.length <= 105
  • 1 <= nums[i] <= 109
  • 1 <= space <= 109

哈希表

nums[i] + c * space= k * space + l + c * space = (k + c) * space + l 。因此,我们将余数进行分组,然后统计。
优化——两次遍历

📎 参考

  • 【题单】数学算法
  • 2598. 执行操作后的最大 MEX1447. 最简分数
    Loading...