CF325C Monsters and Diamonds
题目描述
Pie女孩发现了一只怪兽和一本关于怪兽和馅饼的书。在阅读这本书时,她发现有 $n$ 种类型的怪兽,每一种怪兽的编号在 $1$ 到 $n$ 之间。如果你把一个馅饼喂给一只怪兽,这只怪兽会分裂成若干只怪兽(可能为零只),并且至少会产生一颗彩色钻石。怪兽可能有多种分裂方式。
一开始 Pie女孩恰好有一只怪兽。她首先给怪兽喂一个馅饼。此后她会持续给现有的所有怪兽喂馅饼,直到场上不再剩下怪兽为止。此时她就收集所有出现的钻石。
你将获得描述各种怪兽分裂方式的分裂规则表。每只怪兽至少有一种分裂方式,如果存在多种分裂方式,每次分裂时 Pie女孩可以选择任何一种。
对于每一种怪兽,请你分别求出:如果最初只有这一种编号的怪兽1只,Pie女孩可能最终获得的最少和最多钻石数。Pie女孩有无限多的馅饼。
输入格式
输入的第一行包含两个整数 $m$ 和 $n$($1\leq m, n \leq 10^{5}$),分别表示可用的分裂规则总数和怪兽种类数量。接下来的 $m$ 行,每行描述一个分裂规则。每个分裂规则以一个整数(怪兽编号)$m_i$ ($1\leq m_i\leq n$) 开头,随后是一个整数 $l_i$,表示该分裂结果包含的元素数量。之后跟着 $l_i$ 个整数,正整数表示分裂产生的新怪兽编号,$-1$ 表示得到一颗钻石。
每只怪兽至少有一个分裂规则,每个规则中至少包含一颗钻石。所有分裂规则中的 $l_i$ 总和不超过 $10^5$。
输出格式
对于每一种怪兽(按编号从小到大),输出一行包含两个整数:分别表示以该怪兽开始时 Pie女孩可能收集到的最少和最多钻石数。如果不可能最终达到没有怪兽的状态,则输出 $-1\ -1$。如果有办法获得无限多钻石,最大值输出 $-2$。如果输出的任一数值超过 $314000000$(但不是无限大),则输出 $314000000$。
说明/提示
由 ChatGPT 5 翻译