巴里刚刚从一次团队建设活动中回来,发现他的女朋友爱丽丝登录了他的社交网络账号,正在浏览上传的照片。一场不愉快的谈话现在不可避免了。
“这些女孩都是谁?”爱丽丝问。
“她们……她们是我朋友的女朋友,”巴里回答。
爱丽丝看着第一张照片。
“那么,这些是谁?”爱丽丝追问。
“额……辛迪是查理的女朋友,达莉亚……是丹尼尔的女朋友?”
……下一张照片……
“三个新女孩!她们又是谁的朋友,嗯?”
“伊娃是爱德华的,弗里达是弗雷迪的,还有朱莉娅……”——巴里现在觉得他如履薄冰——“……是查理的新女朋友!”
“真的吗,查理把辛迪甩了?!为了这只青蛙?真奇怪。”
……下一张照片……
“那这里呢?达莉亚、弗里达,还有?……”
“凯蒂。又是查理的新女朋友。”
“这次他做对了。凯蒂是个甜心。”
事情就是这样。爱丽丝将要看 $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$。