#57618. 过山车

    ID: 57618 传统题 1000ms 256MiB 尝试: 0 已通过: 0 难度: (无) 上传者: 标签>计蒜客赛事提高T4/省选最大团搜索魔扣OJ

过山车

暂无测试数据。

蒜头君所在的旅行团中总共有 $N$ 个人,编号为 $1,2,3,\cdots,N$,其中有些人互为好朋友,他们一同来到了游乐场。游乐场的项目有很多,每个人愿意为了玩过山车付出 $v_i$ 元钱,其中 $v_i$ 可能是负数,代表反给钱才玩(因为过山车太刺激了,需要鼓励才敢玩儿)。

蒜头君想要选择一帮人来玩过山车,其中这些人之间两两互为朋友,并且愿意支付的总钱数最大。同时,蒜头君为了照顾到每一对好朋友,蒜头君希望他没有选择的那些人中两两都不是好朋友。

蒜头君想要知道,他有多少种选择方案。

两种不同的方案:当且仅当有至少一个人在两种方案中是否玩过山车的情况不同

输入格式

第一行两个以空格隔开的正整数 $Case,N$,分别表示当前数据的测试点编号,和蒜头君所在旅行团的总人数。

第二行输入 $N$ 个以空格隔开的整数 $v_i$,第 $i$ 个数表示第 $i$ 个人愿意为玩过山车支付的钱数。

接下来 $N$ 行,第 $i$ 行的数据表示第 $i$ 个人的朋友关系。每行一开始一个非负整数 $P_i$,表示第 $i$ 个人有 $P_i$ 个好朋友,接下来 $P_i$ 个以空格隔开的正整数 $x_i$,表示第 $i$ 个人与第 $x_i$ 个人互为好朋友。

输出格式

  • 如果 $Case$ 是偶数,你需要输出所有合法选择中,最大的总金额是多少。
  • 如果 $Case$ 是奇数,你需要输出一共有多少种合法的选择方案。

数据范围

如果合法的话,蒜头君可以一个人都不选择,当然也可以让所有人都玩过山车。设 $M$ 为互为好朋友的人的对数,即 $M= \sum P_i$。

测试点编号 $Case$$N$$M$$v_i$
$0$$\leq 10$$v_i = 1$
$1$$\leq 10$
$2$$\leq 10$
$3$$\leq 10$
$4$$\leq 10$
$5$$\leq 10$
$6$$\leq 100$$\leq 100$$v_i=1$
$7$$\leq 1000$$\leq 1000$
$8$$\leq 100$$\leq 1000$$v_i=1$
$9$$\leq 1000$$\leq 10^5$
$10$$\leq 100$$v_i=1$
$11$$\leq 1000$$\leq 10^5$
$12$$\leq 1000$$\leq 10^5$
$13$$\leq 1000$$\leq 10^5$
$14$$\leq 1000$$\leq 10^5$
$15$$\leq 10^5$$\leq 10^5$
$16$$\leq 10^5$$\leq 10^5$$v_i=1$
$17$$\leq 10^5$$\leq 10^5$
$18$$\leq 10^5$$\leq 10^5$
$19$$\leq 10^5$$\leq 10^5$

无特殊说明的情况,$M\leq \frac{N\times (N-1)}{2},|v_i| \leq 1000$。

0 6
1 1 1 1 1 1
5 2 3 4 5 6
4 3 4 5 6
3 4 5 6
2 5 6
1 6
0
6
1 7
1 1 1 1 1 1 1
5 2 3 4 6 7
5 3 4 5 6 7
0
2 6 7
0
1 7
0
4