PIGS
题号:NC238017
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

m个锁住的猪笼子,你由于没有钥匙,无法打开任意一个。现在有n个客人,现在每个客人手里都有若干个猪笼子的钥匙,并且想从打开的笼子里买若干只猪。每次有猪笼子被打开时,解锁的笼子内的猪可以通过若干条边到达相邻的解锁的笼子里,然后笼子重新关上。现在,请你安排每次打开笼子后,每头猪去往哪些笼子,使得卖出的猪的总数最多。

输入描述:

第一行两个整数

接下来一行包含m个在中的整数,分别表示每个猪笼子中初始的猪的数量。

接下来n行每行以一个整数a开始,之后有个整数k_1,k_2,...,k_a表示这个人有编号为k_1,k_2,...,k_a笼子的钥匙,接下来一个整数表示他会购买至多b只猪。

输出描述:

一个整数,表示最多能卖出去几个猪。
示例1

输入

复制
3 3
3 1 10
2 1 2 2
2 1 3 3
1 2 6

输出

复制
7