#654. 统计单词个数

统计单词个数

题目描述

给出一个长度不超过 200\red{200} 的由小写英文字母组成的字母串(该字串以每行 20\red{20} 个字母的方式输入,且保证每行一定为 20\red{20} 个)。要求将此字母串分成 k\red{k} 份,且每份中包含的单词个数加起来总数最大。

每份中包含的单词可以部分重叠。当选用一个单词之后,其第一个字母不能再用。例如字符串 this\red{this} 中可包含 this\red{this}is\red{is},选用 this\red{this} 之后就不能包含 th\red{th}

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

要求输出最大的个数。

输入格式

每组的第一行有两个正整数 p\red{p},k\red{k}p\red{p} 表示字串的行数,k\red{k} 表示分为 k\red{k} 个部分。

接下来的 p\red{p} 行,每行均有 20\red{20} 个字符。

再接下来有一个正整数 s\red{s},表示字典中单词个数。 接下来的 s\red{s} 行,每行均有一个单词。

输出格式

1\red{1}个整数,分别对应每组测试数据的相应结果。

样例

输入样例

1 3
thisisabookyouareaoh
4
is
a
ok
sab

输出样例

7

提示

对于 100%\red{100\%} 的数据,2k40\red{2≤k≤40}1s6\red{1≤s≤6}

【样例解释】 划分方案为 this / isabookyoua / reaoh