CF257A.Sockets

传统题 时间 2000 ms 内存 256 MiB 5 尝试 1 已通过 1 标签

Sockets

题目描述

Vasya 有许多需要用电的设备。他有 nn 个排插,第 ii 个排插有 aia_{i} 个插口。

总共有 mm 个设备,以及 kk 个可以直接插电的插座,他可以将设备或排插直接插入这些插座。当然,他也可以将一个排插插到另一个排插上。若某个设备(或排插)能够通过 kk 个插座间接或直接连到电源上,则认为它已经接通电源。

请问,Vasya 至少需要用多少个排插,才能让所有设备都通电?注意,每个设备或排插插电都需要占用一个插口,并且每个插口只能插一个设备或排插。

如果即使用完所有排插也无法让全部设备通电,请输出 1-1

输入格式

第一行包含三个整数 nnmmkk1n,m,k501 \leq n, m, k \leq 50),分别表示排插的数量、设备的数量和可直接插电的插座数量。
第二行包含 nn 个用空格分隔的整数 a1,a2,,ana_1, a_2, \ldots, a_n1ai501 \leq a_i \leq 50),其中 aia_i 表示第 ii 个排插上的插口数。

输出格式

输出一个整数,表示使所有设备通电所需的最少排插数量。如果即使使用所有排插也无法满足要求,则输出 1-1

说明/提示

在第一个样例中,他可以将第一个排插直接插入电源。插入后,他总共有 5 个可用插口可以插设备(此排插上的 3 个插口,加上剩余的 2 个可直接插电的插座),因此只需一个排插即可为 5 个设备供电。

在第二个样例中,一种最优做法是直接将第二个排插插上,然后再将第四个排插插入第二个排插中的一个插口。这样恰好有 7 个可用插口来插设备:一个直接插电,第二个排插上的 2 个插口,第四个排插上的 4 个插口。如果只用一个排插,无论如何都无法连上 7 个设备。

由 ChatGPT 5 翻译

样例

3 5 3
3 1 2
1
4 7 2
3 3 2 4
2
5 5 1
1 3 1 2 1
-1

在线编程 IDE

建议全屏模式获得最佳体验