POJ-3267-The Cow Lexicon(简单DP)
来源:互联网 发布:ch341a编程器1.30破解 编辑:程序博客网 时间:2024/06/09 01:07
题意:给你一个长的字符串,然后在给你几个短的字符,需要从长字符串中减去几个字符之后,那几个短字符串才能组成一个长字符串(短字符串不一定全部用到)
解题思路:定义dp[j] 为从j到len 需要减去dp[j] 个字符。
#include <cstdio>#include <cstring>#include <algorithm>using namespace std;int dp[305];char mess[305];char dict[605][305];int main(){ int dictN, messL; while (~scanf("%d%d", &dictN, &messL)) { memset(dp, 0, sizeof(dp)); scanf("%s", mess); for (int i = 0; i < dictN; i++) { scanf("%s", dict[i]); } for (int i = messL - 1; i >= 0; i--) { dp[i] = dp[i + 1] + 1; for (int j = 0; j < dictN; j++) { int len = strlen(dict[j]); if (len <= messL - i && dict[j][0] == mess[i]) { int pDict = 1; int pMess = i + 1; while (pMess < messL) { if (mess[pMess] == dict[j][pDict]) { pDict++; } pMess++; if (pDict == len) { dp[i] = min(dp[i] , dp[pMess] + (pMess - i - len)); break; } } } } } printf("%d\n", dp[0]); } return 0;}
0 0
- POJ-3267 The Cow Lexicon 简单DP
- POJ 3267 The Cow Lexicon (简单DP)
- POJ 3267 The Cow Lexicon 简单dp
- POJ-3267-The Cow Lexicon(简单DP)
- POJ 3267 The Cow Lexicon DP
- poj-3267-The Cow Lexicon-dp
- poj 3267 The Cow Lexicon(dp)
- POJ 3267 - The Cow Lexicon (dp)
- poj 3267 The Cow Lexicon (dp)
- POJ 3267-The Cow Lexicon(DP)
- poj 3267 The Cow Lexicon dp
- POJ 3267 The Cow Lexicon(DP)
- POJ 3267 The Cow Lexicon(DP)
- POJ-3267-The Cow Lexicon-DP
- POJ 3267 The Cow Lexicon(DP)
- poj-3267 The Cow Lexicon【dp】
- POJ 3267 The Cow Lexicon 基础DP
- POJ 3267 The Cow Lexicon dp
- SpringMVC拦截器详解
- Nuget安装Opencv
- Activiti学习文档(二)之安装流程设计器
- 如何使用WinHex脚本自动修复FAT32文件系统DBR
- 网易云音乐引导页
- POJ-3267-The Cow Lexicon(简单DP)
- SpringMVC视图机制详解
- poj【3565】
- 商品展示
- 【Spring】Bean之间的关系
- 【个人笔记重点,不作为参考】主题:webpack入门
- SpringMVC异常处理机制详解
- ElasticSearch 数据查询
- 会场安排问题