#P14937. [uoi2019]波托科兰迪亚的航线

    ID: 14153 传统题 2000ms 512MiB 尝试: 1 已通过: 1 难度: 8 上传者: 标签>CF2400状压DP莫比乌斯反演组合数学前缀和动态规划

[uoi2019]波托科兰迪亚的航线

题目描述

哥萨克·乌斯最近被任命为波托科兰迪亚基础设施部部长。这个国家有 nn 座城市,编号为 11nn

目前波托科兰迪亚没有任何航班,所有人都依靠汽车出行。因此,基础设施部决定开通国内第一批航线。根据该国法律,任意两座城市之间最多只能有一条航线。

乌斯有一个未来 mm 年的航线开通计划。计划中有 mm 个城市列表。每一年,他会从尚未选择过的列表中选择一个,并在这个列表中的所有城市两两之间开通尚不存在的航线。注意:如果列表中有两座城市之间已经有航线,则不能再开通新的航线。

此外,所有波托科兰迪亚居民都知道所谓的“三个最重要的数”:a,b,ca,b,c

对于第 ii 个列表,有一个重要性数值 rir_i。如果在第 ii 个列表中的城市之间开通了所有尚未存在的航线,那么这一年会给国家带来

f(e)rif(e)\cdot r_i

个货币单位的收益。其中 ee 是这一年新开通的航线数量,函数 ff 定义为:

f(e)=(ae2+be+c)modn.f(e)=(a\cdot e^2+b\cdot e+c)\bmod n.

这里 xmodyx\bmod y 表示 xx 除以 yy 的余数。

请你帮助乌斯决定每一年使用哪个尚未使用过的列表,使得 mm 年后的总收益最大。

输入格式

第一行包含三个整数 n,m,gn,m,g1n1061\le n\le10^61m201\le m\le200g80\le g\le8),分别表示城市数、列表数和测试块编号。

第二行包含三个整数 a,b,ca,b,c0a,b,c<n0\le a,b,c<n),表示波托科兰迪亚的“三个最重要的数”。

第三行包含 mm 个整数 r1,r2,,rmr_1,r_2,\ldots,r_m0ri1060\le r_i\le10^6),表示第 ii 个列表的重要性。

接下来 mm 行描述这些列表。第 ii 行先给出一个整数 sis_i1sin1\le s_i\le n),随后给出 sis_i 个整数 ti1,ti2,,tisit_{i1},t_{i2},\ldots,t_{is_i}1tijn1\le t_{ij}\le n),表示第 ii 个列表中的城市。保证同一个列表内城市编号互不相同。

保证所有 sis_i 之和不超过 31063\cdot10^6

输出格式

输出一个整数,表示乌斯能够为国家带来的最大收益。

输入

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

输出

11

计分方式

编号 限制 分数
1 n103n\le10^3m20m\le20,所有 si=2s_i=2,且不存在两个列表包含同一对城市 5
2 n103n\le10^3m20m\le20,所有 si=2s_i=2,且 c=0c=0 7
3 n50n\le50m7m\le7 16
4 n50n\le50m12m\le12 14
5 n105n\le10^5m3m\le3 8
6 n5104n\le5\cdot10^4m10m\le10 17
7 n2105n\le2\cdot10^5m16m\le16 7
8 无额外限制 26