UVA1663 净化器 Purifying Machine
题目描述
给定$M$个长度为$N$的模板串,每个串包含字符$0$,$1$和最多一个字符$*$。其中星号可以匹配$0$或$1$。例如,$01*$可以匹配$010$和$011$。而模板集合$\{*01,100,011\}$可以匹配$\{001,101,100,011\}$。
你的任务是改写这个模板集合,使得模板的个数最少。例如,上述集合可以改写为$\{0\!*\!1,10*\}$,匹配的串集合仍然是$\{001,101,100,001\}$。
输入格式
多组数据。每组数据的第一行有两个数$N$,$M$
$(N\le10,M\le1000)$,分别表示模板的长度和模板个数,$N=0,M=0$时表示输入结束。
输出格式
对于每组数据,输出一行,表示最少的模板集合。