Hezardastan 是伊朗一家领先的信息技术开发集团,他们启动了一个新项目:一个带有商业化服务的私人太空望远镜,用于拍摄所有已知的天体(恒星、行星、星系、星座等)。为了进行特殊研究,我们需要使用这项服务。研究必须在 $k$ 个连续的天数内完成,编号为 $1$ 到 $k$。令 $S_i$ 表示第 $i$ 天需要拍摄的天体集合($1 \leqslant i \leqslant k$)。我们必须在摄影网站上分别为每一天指定集合 $S_i$。
为了指定一个天体集合,我们需要输入其成员的名称。每个天体的名称是一个长度不超过 $10$ 的非空字符串。字符可以是连字符(-)、数字(0 到 9)或大写字母(A 到 Z)。网站为输入天体名称集合提供了有限的通配符支持。具体来说,网站上输入的每个字符串可以通过在开头或结尾(但不能同时在两端)包含最多一个星号()来指代多个天体。星号匹配任何字符串(包括空字符串)。例如,`A指代所有名称以A开头的已知天体,而*99指代所有名称以99结尾的天体(如果存在名为99` 的天体,也包括它)。
我们每拍摄一张照片需要支付 $1000$ 美元。为了减轻服务网站的负载,Hezardastan 对数据输入征收了额外税费:每输入一个用于指定天体集合的字符串,我们必须额外支付 $1$ 美元。因此,例如,如果有 $5$ 个天体的名称以 A 开头或以 B 结尾,那么输入集合 {A*, *B} 时,我们需要支付 $5002$ 美元。
给定所有已知天体的名称以及集合 $S_1, \dots, S_k$,你的任务是为每个 $S_i$ 找到一种最小成本的表示方法。
输入格式
输入的第一行包含两个空格分隔的整数 $n$ ($1 \leqslant n \leqslant 1000$) 和 $k$ ($1 \leqslant k \leqslant 100$)。 第二行包含 $n$ 个空格分隔的唯一字符串,作为所有已知天体的名称。天体按此顺序编号为 $1$ 到 $n$。接下来的 $k$ 行指定 $S_1, \dots, S_k$,每行一个集合。每行以 $|S_i|$($S_i$ 的大小)开头,后跟 $|S_i|$ 个整数,即 $S_i$ 中天体的编号。
输出格式
对于每一天,在输出中打印一行。第 $i$ 行必须以拍摄第 $i$ 天照片的最小可能成本开头。随后应包含该最小成本方法下 $S_i$ 的一种表示。如果该表示包含 $m$ 个元素,则打印整数 $m$,后跟这 $m$ 个元素。行中的所有数字和字符串应以单个空格字符分隔。如果一个集合有多种最优表示,你可以打印其中任意一种。
样例
输入 1
8 7 K-PAX SIRIUS REGULUS ARCTURUS BELLATRIX ANDROMEDA CYGNUS SCORPIUS 8 1 2 3 4 5 6 8 7 6 2 3 4 7 8 6 5 1 2 3 5 8 3 5 6 7 2 2 8 0 1 1
输出 1
8001 1 * 6002 2 *US A* 5003 3 *X *IUS REGULUS 3003 3 B* AND* *NUS 2001 1 S* 0 0 1001 1 K*