zoukankan      html  css  js  c++  java
  • POJ3267

    题目链接:http://poj.org/problem?id=3267

    解题思路:

      思路来源于网络!惭愧惭愧!

         先dp[L] = 0。用一个循环 for(int i = L-1; i>=0; i--) 从后往前遍历 message 中的每一个字符,对于每一个 i,先让 dp[i] = dp[i+1] +1(先假设最坏的情况:在遍历到这个字符的时候无法找到匹配的字符串),然后依次遍历给出的“牛典”里面的W个单词,如果能够匹配(在 message 字符串结束之前能够找齐这个单词中的所有字母)(假设此时对于message遍历到 k),那么更新 dp[i] = min(dp[i], k-i+1-len_of_word+dp[k+1])。差不多就这样了。

    AC代码:

     1 #include <cstring>
     2 #include <cstdio>
     3 #include <algorithm>
     4 using namespace std;
     5 const int maxn=600+3;
     6 char words[maxn][30];
     7 int len[maxn],dp[303];
     8 char temp[303];
     9 int main(){
    10     int W,L;
    11     scanf("%d%d",&W,&L);
    12     scanf("%s",temp);
    13     for(int i=0;i<W;i++){
    14         scanf("%s",words[i]);
    15         len[i]=strlen(words[i]);
    16     }
    17     dp[L]=0;
    18     for(int i=L-1;i>=0;i--){
    19         dp[i]=dp[i+1]+1;
    20         for(int j=0;j<W;j++){
    21             if(L-i>=len[j]){
    22                 int ind=0;
    23                 int k=i;
    24                 for(;k<L;k++){
    25                     if(temp[k]==words[j][ind]){
    26                         ind++;
    27                         if(ind==len[j]) break;
    28                     }
    29                 }
    30                 if(ind==len[j])
    31                     dp[i]=min(dp[i],k-i+1-len[j]+dp[k+1]);
    32             }
    33         }
    34     }
    35     printf("%d
    ",dp[0]);
    36     return 0;
    37 }
    “这些年我一直提醒自己一件事情,千万不要自己感动自己。大部分人看似的努力,不过是愚蠢导致的。什么熬夜看书到天亮,连续几天只睡几小时,多久没放假了,如果这些东西也值得夸耀,那么富士康流水线上任何一个人都比你努力多了。人难免天生有自怜的情绪,唯有时刻保持清醒,才能看清真正的价值在哪里。”
  • 相关阅读:
    1024. Palindromic Number (25)
    Android 它们的定义View
    Acdreamoj1116(Gao the string!)弦hash+二分法+矩阵高速功率
    Linux SVNserver建立
    JavaScript window.location物
    [D3] Reuse Transitions in D3 v4
    [D3] Animate Transitions in D3 v4
    [D3] Debug D3 v4 with Dev Tools
    [Angular] Custom directive Form validator
    [D3] Build an Area Chart with D3 v4
  • 原文地址:https://www.cnblogs.com/Blogggggg/p/7499976.html
Copyright © 2011-2022 走看看