QOJ.ac

QOJ

Límite de tiempo: 5.0 s Límite de memoria: 512 MB Puntuación total: 100 Hackeable ✓

#16739. 嫉妒

Estadísticas

巴里刚刚从一次团队建设活动中回来,发现他的女朋友爱丽丝登录了他的社交网络账号,正在浏览上传的照片。一场不愉快的谈话现在不可避免了。

“这些女孩都是谁?”爱丽丝问。

“她们……她们是我朋友的女朋友,”巴里回答。

爱丽丝看着第一张照片。

“那么,这些是谁?”爱丽丝追问。

“额……辛迪是查理的女朋友,达莉亚……是丹尼尔的女朋友?”

……下一张照片……

“三个新女孩!她们又是谁的朋友,嗯?”

“伊娃是爱德华的,弗里达是弗雷迪的,还有朱莉娅……”——巴里现在觉得他如履薄冰——“……是查理的新女朋友!”

“真的吗,查理把辛迪甩了?!为了这只青蛙?真奇怪。”

……下一张照片……

“那这里呢?达莉亚、弗里达,还有?……”

“凯蒂。又是查理的新女朋友。”

“这次他做对了。凯蒂是个甜心。”

事情就是这样。爱丽丝将要看 $n$ 张照片。在第 $i$ 张照片上,有 $a_i$ 个女孩。当爱丽丝打开一张新照片时,对于照片上的每个女孩,巴里都必须说出她当前的男朋友是谁。幸运的是,他的所有 $k$ 个朋友都出现在每张照片上,这让任务比原本简单了一些。唯一的限制是,在解释单张照片时,必须为不同的女孩指定不同的男朋友。

在巴里讲述他的故事时,爱丽丝会计算故事的怀疑度。对于这 $k$ 个男生中的每一个,爱丽丝都会在脑海中记录上一次在故事中提到他时,他的女朋友是谁。每当巴里说第 $j$ 个男生现在与女孩 $i$ 交往时,当且仅当爱丽丝脑海中记录的男生 $j$ 的前任女朋友是另一个女孩(即不是女孩 $i$,且不是“无女朋友”)时,爱丽丝就会将怀疑度增加 $q_i$。最开始,她假设巴里的所有朋友都没有女朋友。当然,巴里希望最小化他故事的总怀疑度。

注意,对于两个男生,爱丽丝可能会在脑海中认为他们同时与同一个女孩交往。然而,这不会以任何方式影响怀疑度。

输入格式

输入的第一行包含三个整数 $n$、$k$ 和 $m$($1 \le n \le 100$,$0 \le k, m \le 100$)—— 分别表示爱丽丝要看的照片数量、每张照片上的朋友(男生)数量,以及可能出现在这些照片上的不同女孩的数量。

第二行包含 $m$ 个整数 $q_i$($0 \le q_i \le 1000$),定义了如果第 $i$ 个女孩成为某个人的女朋友(替代了另一个女孩)时,爱丽丝增加的怀疑度。

接下来有 $n$ 行,描述每张照片。每个描述包含一个整数 $a_i$ —— 第 $i$ 张照片上的女孩数量,紧接着是 $a_i$ 个不同的女孩编号 $g_{i,j}$($0 \le a_i \le \min(m, k)$,$1 \le g_{i,j} \le m$)。

输出格式

输出必须包含 $n+1$ 行。

第一行必须包含一个整数 —— 故事可能达到的最小总怀疑度。

接下来必须有 $n$ 行描述故事本身:对于每张照片,输出 $a_i$ 个编号 —— 照片上每个女孩当前的男朋友编号。保持输入数据的顺序。巴里的朋友从 $1$ 到 $k$ 编号。

样例

输入样例 1

3 4 6
3 5 4 6 10 1
2 1 2
3 3 4 5
3 2 4 6

输出样例 1

5
1 2
1 3 4
2 3 4

输入样例 2

6 2 3
1 10 100
1 1
2 2 3
2 1 2
2 1 3
1 3
1 1

输出样例 2

111
1
1 2
2 1
2 1
1
2

说明

下表展示了第二个样例的答案:

男生 \ 天数 1 2 3 4 5 6
1 1 2 2 3 3 3
2 3 3 1 1 1 1

表中给出了爱丽丝每天脑海中记录的信息。怀疑度在第二天增加了 10,在第三天增加了 1,在第四天增加了 100。总和为 $10+1+100 = 111$。

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.