luogu#P10544. [THUPC 2024 决赛] 转化

[THUPC 2024 决赛] 转化

题目描述

nn 种物品和 mm 种转化方式。第 ii 种转化方式可以将一个第 aia_i 种物品转化成 kik_i 个互不相同的物品,其中第 jj 个的种类是 bi,jb_{i,j}。同一种转化方式可以使用任意多次。

你有一些物品。你想知道,对于每一种特定的物品 dd,你用这些你所拥有的物品可以分别转化出最多多少个该种物品。

输入格式

第一行两个正整数 n,mn,m

第二行 nn 个非负整数,其中第 ii 个为 cic_i,表示你拥有的第 ii 种物品的数量。

接下来 mm 行,其中第 ii 行表示第 ii 种转化方式。

转化方式的格式为:一行 ki+2k_i+2 个正整数,其中第一个为 aia_i,第二个为 kik_i,之后为 kik_i 个互不相同的正整数 bi,1,bi,2,,bi,kib_{i,1},b_{i,2},\cdots,b_{i,k_i}​​。

保证 1n1001\le n \le 1001m10001\le m \le 1000

保证 1ai,ki,bi,jn1\le a_i,k_i,b_{i,j} \le n

保证 0ci10000\le c_i \le 1000

输出格式

输出 nn 行,其中第 dd 行表示第 dd 种物品最多能有多少个。如果可以任意多,即对于任意的 NN 都存在一种方案使得有超过 NN 个第 dd 种物品,输出 infinity

4 4
1 0 0 0
1 2 2 4
1 1 3
2 1 4
3 1 4

1
1
1
2

提示

不使用任何转化方式,可以得到一个物品 11

使用一次第一种转化方式,可以把物品 11 变成物品 22 和物品 44。这样可以得到一个物品 22

使用一次第二种转化方式,可以把物品 11 变成物品 33。这样可以得到一个物品 33

使用一次第一种转化方式,可以把物品 11 变成物品 22 和物品 44。然后再使用一次第三种转化方式,可以把物品 22 变成物品 44。这样可以得到两个物品 44

可以证明这四种方案分别是当 d=1,2,3,4d=1,2,3,4 时的最优方案。

来源与致谢

来自 THUPC2024(2024年清华大学学生程序设计竞赛暨高校邀请赛)决赛。感谢 THUSAA 的提供的题目。

数据、题面、标程、题解等请参阅 THUPC 官方仓库 https://thusaac.com/public