Leetcode每日一题 —— 3718. 缺失的最小倍数

魔法师 2026-08-25 09:04 1



思路


直接模拟。


代码


class Solution {
public int missingMultiple(int[] nums, int k) {
int[] cnt = new int[101];
for (int num : nums) {
cnt[num]++;
}
int m = k;
while (m <= 100 && cnt[m] > 0) {
m += k;
}
return m;
}
}
最新回复 (4)
  • CPython 08-25 09:05
    1

    早上好佬友,今天来早了


    class Solution:
    def missingMultiple(self, nums: List[int], k: int) -> int:
    nums = set(nums)
    x = k
    while k in nums:
    k += x
    return k

  • SomeBottle 08-25 09:10
    2

    规模不大,标记出现的数字然后枚举即可。


    class Solution {
    public:
    int missingMultiple(vector<int>& nums, int k) {
    bool nMap[101];
    memset(nMap, 0, sizeof(nMap));
    for (int num : nums) {
    // 标记已经出现的数字
    nMap[num] = true;
    }
    int f = 1;
    while (f * k <= 100 && nMap[f * k]) {
    f++;
    }
    return f * k;
    }
    };
  • Infinity4B 08-25 09:53
    3

    算术评级 2 第 472 场周赛 Q1 难度分 1228

    简简单单


    class Solution:
    def missingMultiple(self, nums: List[int], k: int) -> int:
    nums = set(nums)
    for i in range(1,100//k+2):
    if i*k not in nums:
    return i*k
  • vector2 08-25 10:28
    4
    class Solution:
    def missingMultiple(self, nums: List[int], k: int) -> int:
    n = max(nums) // k
    for i in range(1, n + 1):
    if k * i not in nums:
    return k * i
    return k * (n + 1)
* 帖子来源Linux.do
返回