统计单词个数
来源:互联网 发布:php 请求超时设置 编辑:程序博客网 时间:2024/05/03 10:15
这个题和之前一个乘法最大思路差不多,就是如果要划分k份之前已经划分了k-1份,划分为k份的就是由,k-1推来的再加上第k份的单词个数,所以就枚举前面k-1分到的位置,是k~当前位置,取最大值,就是结果了
然后单词个数就在线统计就行了,因为以一个数为首字母的只能用一次,所以找最短的单词记下来就行了。
#include<cstdio>#include<cstring> #include<iostream>using namespace std;char a[999][999],b[9099];int p,k,n;int len[999];int d[99999];int f[3999][3999];int main() { scanf("%d%d",&p,&k); for(int i=1;i<=p*20;i++) cin>>b[i]; scanf("%d",&n); for(int i=1;i<=n;i++) { cin>>a[i]; len[i]=strlen(a[i]); } d[0]=9999999; for(int i=1;i<=p*20;i++) {int minn=99999;int q=9999999; for(int j=1;j<=n;j++) {int w=i;int f=0; for(int k=0;k<len[j];k++) { if(b[w++]!=a[j][k]) { f=1; break; } } if(f==0) minn=min(minn,len[j]),q=i+len[j]-1; } d[i]=q; } for(int i=1;i<=p*20;i++) for(int j=1;j<=k;j++) { int t=0; for(int q=i;q>=j;q--) { if(d[q]<=i) t++; f[i][j]=max(f[q-1][j-1]+t,f[i][j]); } }printf("%d ",f[p*20][k]);}
阅读全文
1 0
- vc 统计单词个数
- 统计单词个数
- 统计单词个数
- 统计单词个数
- 统计单词个数
- 统计单词个数
- 统计单词个数
- 状态机统计单词个数
- wikioi1040 统计单词个数
- C统计单词个数
- 统计不同单词个数
- 统计单词个数
- acm-统计单词个数
- 17.2统计单词个数
- 统计单词个数
- DP-统计单词个数
- noip2001统计单词个数
- 统计单词个数
- Android studio3.0 Carray3 解决dependencies找不到的build:gradle:3.0.0-alpha问题
- Spark-Streaming与Kafka整合
- windows 下编译X264
- QT QML初体验随笔之QQuickView(10)
- String中intern的方法
- 统计单词个数
- tgtadm和iscsiadm命令的用法
- hibernate映射文件class元素属性详解
- C++的多重继承
- VAssistX 添加inclue查找路径支持语法高亮(举例:兼容Qt导入项目)
- Unbantu 编译ffmpeg Android版本库
- ubuntu下安装teamviewer
- CentOS7通过yum安装Mysql5.7+修改默认密码+远程登录
- 237. Delete Node in a Linked List的C++解法