有乙個很長的由小寫字母組成的字串。為了便於對這個字串進行分析,需要將它劃分成若干部分,每部分稱為乙個單詞。出於減少分析量的目的,希望劃分出的單詞數越少越好。
第1行1個字串,長度不超過100。第2行1個整數n,表示單詞的個數,n<=100。
第3~n+2行,每行列出1個單詞。
一行乙個正整數,表示字串可以被劃分成的最少的單詞數。
realityour
5real
reality
ityour
our
2
realityour應分為(reality和our)兩部分
這道題是求劃分的最小數,仔細看的話其實最長(–)子串行的變形
我們假設f(i)為長度為i的字串被劃分的最少單詞數,初始化f(0)=0
動態轉移方程為f[i] = min ( f[i] , f [ i - a [ j ].size() ] + 1 )————————ac**
#include
using
namespace std;
int n,f[
110]
;string s,a[
110]
;//動態轉移方程:f[i]=min(f[i],f[i-a[j].size()]+1)
bool
check
(int i,
int j)
intmain()
——qaq 單詞的劃分
單詞的劃分 time limit 1s memory limit 1000k total submit 2558 accepted 1134 有乙個很長的由小寫字母組成字串。為了便於對這個字串進行分析,需要將它劃分成若干個部分,每個部分稱為乙個單詞。出於減少分析量的目的,我們希望劃分出的單詞數越少越...
DP 單詞的劃分
題目描述 有乙個很長的由小寫字母組成字串。為了便於對這個字串進行分析,需要將它劃分成若干個部分,每個部分稱為乙個單詞。出於減少分析量的目的,我們希望劃分出的單詞數越少越好。你就是來完成這一劃分工作的。輸入 第一行,乙個字串。字串的長度不超過300 第二行乙個整數n,表示單詞的個數。n 100 第3 ...
Leetcode map dfs 單詞劃分
給定乙個字串s和一組單詞dict,在s中新增空格將s變成乙個句子,使得句子中的每乙個單詞都是dict中的單詞 返回所有可能的結果 例如 給定的字串s catsanddog dict cat cats and sand dog 返回的結果為 cats and dog cat sand dog 思路 對...