leetcode在力扣 App 中打开
调试中...
调试中...
题目描述
题目描述
题解
题解
提交记录
提交记录
代码
代码
测试用例
测试用例
测试结果
测试结果
中等
相关标签
相关企业
提示

给你一个整数数组 groups,其中 groups[i] 表示第 i 组的大小。另给你一个整数数组 elements

请你根据以下规则为每个组分配 一个 元素:

  • 如果 groups[i] 能被 elements[j] 整除,则下标为 j 的元素可以分配给组 i
  • 如果有多个元素满足条件,则分配 最小的下标 j 的元素。
  • 如果没有元素满足条件,则分配 -1 。

返回一个整数数组 assigned,其中 assigned[i] 是分配给组 i 的元素的索引,若无合适的元素,则为 -1。

注意:一个元素可以分配给多个组。

 

示例 1:

输入: groups = [8,4,3,2,4], elements = [4,2]

输出: [0,0,-1,1,0]

解释:

  • elements[0] = 4 被分配给组 0、1 和 4。
  • elements[1] = 2 被分配给组 3。
  • 无法为组 2 分配任何元素,分配 -1 。

示例 2:

输入: groups = [2,3,5,7], elements = [5,3,3]

输出: [-1,1,0,-1]

解释:

  • elements[1] = 3 被分配给组 1。
  • elements[0] = 5 被分配给组 2。
  • 无法为组 0 和组 3 分配任何元素,分配 -1 。

示例 3:

输入: groups = [10,21,30,41], elements = [2,1]

输出: [0,1,0,1]

解释:

elements[0] = 2 被分配给所有偶数值的组,而 elements[1] = 1 被分配给所有奇数值的组。

 

提示:

  • 1 <= groups.length <= 105
  • 1 <= elements.length <= 105
  • 1 <= groups[i] <= 105
  • 1 <= elements[i] <= 105
通过次数
2.6K
提交次数
7.6K
通过率
34.1%

相关标签

相关企业

提示 1
Can a sieve-like approach be applied here?

提示 2
Starting from the smallest index, iterate through the multiples of the element and assign it to groups divisible by that value.

提示 3
Process each element once.

提示 4
Find all divisors of each group, then match them with elements.

评论 (0)

贡献者
© 2025 领扣网络(上海)有限公司
0 人在线
行 1,列 1
groups =
[8,4,3,2,4]
elements =
[4,2]
Source