AlgoMooc
← 返回题库

K0067. 魔法出租车方案

中等通过率 45% · 提交 73 · 通过 33
模拟枚举数学

小慕正在负责公司的一次团建出行安排。公司有多个部门,每个部门的人数各不相同。为了顺利出行,小慕联系了多家魔法出租车公司,每家公司都提供了不同的车型,且每种车型都有无数辆。 每个部门的人必须乘坐同一辆车,且每辆车只能搭载一个部门的人。小慕需要从这些出租车公司中,选择一个方案,使得所有出租车的尽可能少(从0开始计算)。如果有多个方案的空座数相同,则选择序号最小的公司。如果没有公司能够满足需求,则返回 `-1`。

提示:带虚线的词点一下有通俗解释。

输入描述

- 第一行输入一个整数 `n`,表示公司的部门数量。 - 第二行输入一个长度为 `n` 的数组 `depts`,其中每个元素表示一个部门的人数。 - 接下来输入 `k`(租车公司数量),然后对于每个租车公司: - 第一行输入该公司提供的车型数量 `m`。 - 第二行输入该公司提供的所有车型的载客量(一个整数列表)。 - `1 <= m, k <= 300` - `1 <= n <= 5000` - `1 <= depts[i] <= 10^5`

输出描述

- 输出一个整数,表示能使空座位最少的租车公司序号。如果没有公司能满足需求,输出 `-1`。

示例

示例 1

输入

3
10 8 15
2
3
8 15 12
4
20 4 15 4

输出

0

示例 2

输入

2
5 9
3
1
4
2
6 10
2
5 11

输出

1

示例 3

输入

2
10 10
2
4
2 9 8 3
1
7

输出

-1

时间限制 1000 ms · 内存限制 128 MB

看不懂题目?点开图解(训练营专属)

登录后查看题目图解

题目图解为训练营学员专属内容,请先登录。

微信扫码登录还不是训练营学员?了解训练营 →
写完代码点「提交」,将对全部测试用例判题。