编程题
### 问题描述
依依在一次探险之旅中,来到了一个充满神秘气息的岛屿。岛上有一个古老的传说:岛上散落着 $N$ 颗神秘的宝石,每颗宝石上都刻有一个由小写英文字母组成的字符串 $S_1, S_2, ..., S_N$。宝石上刻有的字符串代表了它所具备的神秘力量。
依依想要挑选一些宝石来解锁岛上的宝藏,但是她发现这些宝石的力量有一个奇特的规律:当挑选出的宝石中,恰好有 $K$ 颗宝石包含某个字母时,这个字母的力量才会被激活。若要解锁宝藏,依依需要激活尽可能多的字母。请帮助依依计算出能激活的最大字母种类数。
### 输入格式
第一行输入两个整数 $N$ 和 $K$($1\leq N \leq 15$,$1\leq K \leq N$)。
接下来 $N$ 行,每行输入一个字符串 $S_i$。
$S_i$ 是由大写英文字母组成的非空字符串,且不包含两个或两个以上相同的字母。如果 $i \neq j$,则 $S_i \neq S_j$。
### 输出格式
输出一个整数,表示能激活的最大字母种类数。
### 样例输入
```
4 2
AB
CD
EF
AC
```
### 样例输出
```
2
```
### 样例说明
依依可以选择宝石 1、宝石 2 和 宝石 4("AB" 、 "CD" 和 "AC"),这样字母 'A' 和 'C' 的力量都会被激活。其他选择最多只能激活一个字母的力量。