#P2856. [USACO06FEB] Cellphones G

[USACO06FEB] Cellphones G

题目描述

D (1D1000)D\ (1 \le D \le 1000) 只奶牛的名字都是由英文字母表的前 L (1L26)L\ (1 \le L \le 26) 个大写字母构成的,且长度 SS 满足 1S101 \le S \le 10。现在想设计一种手机,有 B (1BL)B\ (1 \le B \le L) 个按键。请你把这 LL 个字母按顺序分配给 BB 个按键,使能够通过按这些键而唯一确定的奶牛数尽量多。

输入格式

第一行两个正整数 B,LB,L

第二行一个正整数 DD

下面 DD 行,每行一个字符串,表示已知奶牛的名字。

输出格式

第一行一个整数表示通过按这些键而唯一确定的最大奶牛数。

下面 BB 行,构造一组方案:对于其中的第 ii 行,按字母表顺序依次输出所有属于第 ii 个按键的字母。

3 13
11
ALL
BALL
BELL
CALK
CALL
CELL
DILL
FILL
FILM
ILL
MILK
7
AB
CDEFGHIJK
LM

提示

样例解释:除了 CELL/DILL/FILL/FILM 的按键顺序都是 22332 - 2 - 3 - 3 外,剩下 77 个名字都可以通过按这些键而唯一确定。