7043 - 统计单词个数

给出一个长度不超过200的由小写英文字母组成的字母串(约定:该字串以每行20个字母的方式输入,且保证每行一定为20个)。要求将此字母串分成k份(1<k<=40),且每份中包含的单词个数加起来总数最大(每份中包含的单词可以部分重叠。当选用一个单词之后,其第一个字母不能再用。例如字符串this中可包含this和is,选用this之后就不能包含th)。

单词在给出的一个不超过6个单词的字典中。

要求输出最大的个数。

输入

每个测试文件只包含一组测试数据,其格式如下:

每组的第一行输入两个正整数p和k,p表示字串的行数,k表示分为k个部分。

接下来的p行,每行均有20个字符。

再接下来一行输入一个正整数s(1<=s<=6),表示字典中单词个数。

接下来的s行,每行输入一个单词。

输出

对于每组输入数据,输出一个整数,分别对应每组测试数据的相应结果。

下面是对样例数据的说明:

样例数据中对字母串分割的方式是:this/isabookyoua/reaoh

样例

输入

1 3
thisisabookyouareaoh
4
is
a
ok
sab

输出

7

来源

NOIP

时间限制 1 秒
内存限制 125 MB
讨论 统计
上一题 下一题