1633: [Usaco2007 Feb]The Cow Lexicon 牛的词典

Time Limit: 5 Sec  Memory Limit: 64 MB
Submit: 599  Solved: 333
[Submit][Status][Discuss]

Description

没有几个人知道,奶牛有她们自己的字典,里面的有W (1 ≤ W ≤ 600)个词,每个词的长度不超过25,且由小写字母组成.她们在交流时,由于各种原因,用词总是不那么准确.比如,贝茜听到有人对她说"browndcodw",确切的意思是"browncow",多出了两个"d",这两个"d"大概是身边的噪音. 奶牛们发觉辨认那些奇怪的信息很费劲,所以她们就想让你帮忙辨认一条收到的消息,即一个只包含小写字母且长度为L (2 ≤ L ≤ 300)的字符串.有些时候,这个字符串里会有多余的字母,你的任务就是找出最少去掉几个字母就可以使这个字符串变成准确的"牛语"(即奶牛字典中某些词的一个排列).

Input

第1行:两个用空格隔开的整数,W和L.

第2行:一个长度为L的字符串,表示收到的信息. 第3行至第W+2行:奶牛的字典,每行一个词.

Output

唯一一行:一个整数,表示最少去掉几个字母就可以使之变成准确的"牛语".

Sample Input

6 10
browndcodw
cow
milk
white
black
brown
farmer

Sample Output

2

dp,然而我没看题解之前并不会做。。。。。太蒟蒻

#include<iostream>
#include<cstring>
#include<cstdio>
#include<string>
using namespace std;
int n,l,len[605],f[605];
char str[605],ch[605][30];
inline int cal(int x,int len,int y)
{int tot=0;int l1=x,l2=1;while(l1<=l){if(str[l1]==ch[y][l2])l2++;else tot++;if(l2==len+1)return tot;l1++;}return -1;
}
int main()
{scanf("%d%d",&n,&l);scanf("%s",str+1);for(int i=1;i<=n;i++)scanf("%s",ch[i]+1);for(int i=l;i;i--){f[i]=f[i+1]+1;for(int j=1;j<=n;j++){int Len=strlen(ch[j]+1);int t=cal(i,Len,j);if(t!=-1)f[i]=min(f[i],f[i+Len+t]+t);}}printf("%d",f[1]);return 0;
}

BZOJ 1633: [Usaco2007 Feb]The Cow Lexicon 牛的词典相关推荐

  1. bzoj 1633: [Usaco2007 Feb]The Cow Lexicon 牛的词典【dp】

    预处理出g[i][j]表示原串第i个匹配第j个单词需要去掉几个字母(匹配不上为-1) 设f[i]为i及之后满足条件要去掉的最少字母 倒着dp! f[i]初始为f[i+1]+1,转移方程为f[i]=mi ...

  2. 1633: [Usaco2007 Feb]The Cow Lexicon 牛的词典(DP)

    1633: [Usaco2007 Feb]The Cow Lexicon 牛的词典 Time Limit: 5 Sec  Memory Limit: 64 MB Submit: 633  Solved ...

  3. bzoj 1697: [Usaco2007 Feb]Cow Sorting牛排序(置换)

    1697: [Usaco2007 Feb]Cow Sorting牛排序 Time Limit: 5 Sec  Memory Limit: 64 MB Submit: 706  Solved: 413 ...

  4. poj 3268 bzoj 1631: [Usaco2007 Feb]Cow Party(最短路)

    1631: [Usaco2007 Feb]Cow Party Time Limit: 5 Sec  Memory Limit: 64 MB Submit: 855  Solved: 613 [Subm ...

  5. BZOJ 1631: [Usaco2007 Feb]Cow Party【最短路】

    1631: [Usaco2007 Feb]Cow Party [题目描述] 传送门 题解 正向建边,从X开始刷一趟SPFA,然后反向建边,从X刷一趟SPFA,最后两次的答案加和就可以了. 代码如下 # ...

  6. bzoj 1635: [Usaco2007 Jan]Tallest Cow 最高的牛

    1635: [Usaco2007 Jan]Tallest Cow 最高的牛 Time Limit: 5 Sec  Memory Limit: 64 MB Submit: 647  Solved: 39 ...

  7. bzoj 1698: [Usaco2007 Feb]Lilypad Pond 荷叶池塘(BFS)

    1698: [Usaco2007 Feb]Lilypad Pond 荷叶池塘 Time Limit: 5 Sec  Memory Limit: 64 MB Submit: 550  Solved: 1 ...

  8. bzoj 1696: [Usaco2007 Feb]Building A New Barn新牛舍

    1696: [Usaco2007 Feb]Building A New Barn新牛舍 Time Limit: 5 Sec  Memory Limit: 64 MB Submit: 481  Solv ...

  9. bzoj 1632: [Usaco2007 Feb]Lilypad Pond(BFS)

    1632: [Usaco2007 Feb]Lilypad Pond Time Limit: 5 Sec  Memory Limit: 64 MB Submit: 688  Solved: 230 [S ...

  10. BZOJ 1640: [Usaco2007 Nov]Best Cow Line 队列变换

    Description FJ打算带着他可爱的N (1 ≤ N ≤ 2,000)头奶牛去参加"年度最佳老农"的比赛.在比赛中,每个农夫把他的奶牛排成一列,然后准备经过评委检验. 比赛 ...

最新文章

  1. ElasticSearch 6.x 学习笔记:12.字段类型
  2. redis 查看key的有效期_你经常忽略的Redis常见面试题,精选给你整理
  3. Objective-C 中Socket常用转换机制(NSData,NSString,int,Uint8,Uint16,Uint32,byte[])
  4. 日志进程redo thread
  5. 开始VC6学习之旅3
  6. CSS样式中,background-image 背景图片居中显示并且在不同屏幕分辨率下始终居中
  7. gdb 打印字符串全部内容
  8. JNPF.java前后端分离框架,SpringBoot+SpringCloud开发微服务平台
  9. Latex论文下载学习教程
  10. cadence SPB17.4 - export placement file to openpnp
  11. 小游戏开发者流量变现指南
  12. matlab 获取文件毫秒时间,在Matlab中经过的时间,以毫秒为单位,具有不同的日期...
  13. 通信技术计算机技术合称为,通信技术、计算机技术和控制 技术合称为3C
  14. 【NOIP2018】旅行 (洛谷P5049 / P5022) O(nlogn)题解
  15. 要成功,就要对自己狠心
  16. BUU刷题记录(四)
  17. Ristretto—SqueezeNet示例详解
  18. 推荐系统4--AutoRec与Deep Crossing(改变神经网络的复杂程度)
  19. 云南计算机网络技术专业培训学院,云南哪些大学有计算机网络技术专业
  20. GEE加载指定区域、指定时间的影像

热门文章

  1. 4人抢答器----基于Step MAX10小脚丫开发板
  2. python音乐库_目前在python3下有哪些音乐处理库?
  3. Microsoft Office 2007 注册码office Visio 2007 注册码
  4. HFSS 3D LAYOUT TDR仿真
  5. 硬币组合问题-非递归实现
  6. ARM汇编 BIC和ORR指令
  7. 拼刀刀店铺后台的参数anti-content逆向分析
  8. 计算机设备管理器如何看内存,怎么查看电脑配置信息?3种方法,让你掌握电脑全部信息!...
  9. 爬取豆瓣电影排行榜top 250
  10. 怎样使用 iOS 7 的 AVSpeechSynthesizer 制作有声书(1)