最新消息:

信息学奥赛题库- 【01NOIP提高组】统计单词个数

C++ 少儿编程 1090浏览 0评论

【题目描述】

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

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

要求输出最大的个数。

【输入】

第一行有二个正整数(p,k),p表示字串的行数,k表示分为k个部分。

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

再接下来有一个正整数s,表示字典中单词个数。(1≤s≤6)

接下来的s行,每行均有一个单词。

【输出】

一个整数,最大单词个数。

【输入样例】

1 3
thisisabookyouareaoh
4
is
a
ok
sab

【输出样例】

7

您必须 登录 才能发表评论!