BZOJ1633: [Usaco2007 Feb]The Cow Lexicon 牛的词典 DP
2016-11-25 07:40
441 查看
1633: [Usaco2007 Feb]The Cow Lexicon 牛的词典
Time Limit: 5 Sec Memory Limit: 64 MBSubmit: 582 Solved: 321
[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 10browndcodw
cow
milk
white
black
brown
farmer
Sample Output
2HINT
Source
Silver[Submit][Status][Discuss]
题解:
f[i]表示覆盖前i个字符需要删去最小的字符数量
#include<cmath> #include<cstdio> #include<cstring> #include<iostream> #include<algorithm> using namespace std; const int N=1005; int n,l,f ; char a ,c [35]; int main() { scanf("%d%d",&n,&l); scanf("%s",a+1); for(int i=1;i<=n;i++) scanf("%s",c[i]+1); for(int i=1;i<=l;i++) { f[i]=i; for(int j=1;j<=n;j++) { int len=strlen(c[j]+1),cnt=0,k; for(k=i;k;k--) { if(c[j][len]==a[k]) len--; else cnt++; if(len==0) break; } if(len==0) f[i]=min(f[i],f[k-1]+cnt); } } printf("%d",f[l]); }
相关文章推荐
- 【BZOJ1633】[Usaco2007 Feb]The Cow Lexicon 牛的词典【DP】
- bzoj 1633: [Usaco2007 Feb]The Cow Lexicon 牛的词典【dp】
- 【BZOJ】1633: [Usaco2007 Feb]The Cow Lexicon 牛的词典(dp)
- BZOJ 1633 [Usaco2007 Feb]The Cow Lexicon 牛的词典(单调DP)
- |BZOJ 1633|字符串DP|[Usaco2007 Feb]The Cow Lexicon 牛的词典
- bzoj1633 [Usaco2007 Feb]The Cow Lexicon 牛的词典
- bzoj1633 [Usaco2007 Feb]The Cow Lexicon 牛的词典
- BZOJ1633: [Usaco2007 Feb]The Cow Lexicon 牛的词典
- 1633: [Usaco2007 Feb]The Cow Lexicon 牛的词典(DP)
- 【动态规划】bzoj1633 [Usaco2007 Feb]The Cow Lexicon 牛的词典
- BZOJ 1633: [Usaco2007 Feb]The Cow Lexicon 牛的词典
- 1633: [Usaco2007 Feb]The Cow Lexicon 牛的词典 (动态规划)
- 1633: [Usaco2007 Feb]The Cow Lexicon 牛的词典 (动态规划)
- 1633: [Usaco2007 Feb]The Cow Lexicon 牛的词典
- BZOJ 1694 [Usaco2007 Demo]Grazing on the Run DP
- BZOJ 1631: [Usaco2007 Feb]Cow Party( 最短路 )
- BZOJ 1631: [Usaco2007 Feb]Cow Party
- bzoj1592 [Usaco2008 Feb]Making the Grade 路面修整 dp
- BZOJ 1631: [Usaco2007 Feb]Cow Party spfa
- BZOJ 1652: [Usaco2006 Feb]Treats for the Cows( dp )