题目描述

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

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

要求输出最大的个数。

输入输出格式

输入格式:

每组的第一行有22个正整数(p,kp,k)

pp表示字串的行数,kk表示分为kk个部分。

接下来的pp行,每行均有2020个字符。

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

接下来的ss行,每行均有11个单词。

输出格式:

11个整数,分别对应每组测试数据的相应结果。

输入输出样例

输入样例#1: 复制

thisisabookyouareaoh

is
a
ok
sab
输出样例#1: 复制

7

【思路】:

首先看到题好像是个划分型的dp,,然后竟然有一个限制:
一个单词被用过后首字母不能再用,所以如果(j,i)区间以j为首存在单词,则:s[j][i]=s[j+1][i]+1 否则s[j][i]=s[j+1][i]

f[i][k]=max(f[j][k-1],s[j+1][i])(i为位置,k为次数,s为区间单词数)

代码:

最新文章

  1. Atitti &#160;css &#160;&#160;transition&#160;Animation&#160;differ区别
  2. WebAPI身份验证
  3. [Test] 单元测试艺术(1) 基础知识
  4. thinkphp-1
  5. 【转载】高性能IO设计 &amp; Java NIO &amp; 同步/异步 阻塞/非阻塞 Reactor/Proactor
  6. C#利用Attribute实现简易AOP介绍 (转载)
  7. python----特性003
  8. Spring事务异常回滚,捕获异常不抛出就不会回滚(转载) 解决了我一年前的问题
  9. Spring笔记 - Bean xml装配
  10. 【转】ASP.NET MVC实现权限控制
  11. 单元测试-unittest模块
  12. sklearn 数据预处理1: StandardScaler
  13. python--第十一天总结(paramiko 及数据库操作)
  14. [小知识] 关闭我的电脑里面的百度网盘以及修改win+e快捷键打开我的电脑
  15. PHP之null
  16. android linux 内核层
  17. SQL Server FOR XML PATH 和 STUFF函数的用法
  18. oracle 慢查询
  19. CentOS7.3 部署Haproxy 1.7.2
  20. 利用github pages五分钟建好个人网站+个人博客

热门文章

  1. 使用QMetaObject获取类的属性
  2. Spark 系列(十三)—— Spark Streaming 与流处理
  3. 缓存的设计及PHP实现LFU
  4. 2.7_Database Interface OLE-DB诞生
  5. Python3 MySQL
  6. error C2338: You&#39;ve instantiated std::aligned_storage&lt;Len, Align&gt; with an extended alignment (in other words, Align &gt;
  7. SVN commit:remains in tree-conflict错误的解决办法
  8. jenkins 启动
  9. python Linux 环境 (版本隔离工具)
  10. Linux将用户添加到组的指令