P1026 統計單詞個數

2022-03-04 02:34:48 字數 1899 閱讀 2670

給出乙個長度不超過200的由小寫英文本母組成的字母串(約定;該字串以每行20個字母的方式輸入,且保證每行一定為20個)。要求將此字母串分成k份(1單詞在給出的乙個不超過6個單詞的字典中。

要求輸出最大的個數。

輸入格式:

每組的第一行有二個正整數(p,k)

p表示字串的行數;

k表示分為k個部分。

接下來的p行,每行均有20個字元。

再接下來有乙個正整數s,表示字典中單詞個數。(1<=s<=6)

接下來的s行,每行均有乙個單詞。

輸出格式:

乙個整數,分別對應每組測試資料的相應結果。

輸入樣例#1: 複製

1 3

thisisabookyouareaoh4is

aoksab

輸出樣例#1: 複製

7

this/isabookyoua/reaoh

#include using

namespace

std;

typedef

long

long

ll;#define inf 2147483647

const ll inf =0x3f3f3f3f3f3f3f3fll;

#define ri register inttemplate

inline t min(t a, t b, t c)

template

inline t max(t a, t b, t c)

template

inline t min(t a, t b, t c, t d)

template

inline t max(t a, t b, t c, t d)

#define pi acos(-1)

#define me(x, y) memset(x, y, sizeof(x));

#define for(i, a, b) for (int i = a; i <= b; i++)

#define ffor(i, a, b) for (int i = a; i >= b; i--)

#define mp make_pair

#define pb push_back

const

int maxn = 100005

;#define mod 100003

const

int n=200;//

name*******************************

char a[210

];char word[210][210

];bool

vis[mod];

intn,m;

int sum[210][210

];int

p,k;

bool v[210

];int f[210][210

];//

function******************************

int hash(char *str)

returnk;}

//***************************************

intmain()

n=p*20

; scanf("%d

",&m);

for(i,

1,m)

for(i,

1,n)

}if(!flag)sum[i][j]++,v[l]=1

; }}}

}for(i,

1,n)

for(k,

1,k)

for(j,k-1,i-1

) cout

}

P1026 統計單詞個數

p1026 統計單詞個數 設 f i j 表示到主串第 i 位,已分成 j 段的最多單詞數,val l r 表示區間 l,r 包含的單詞個數 可得 f i j max f i j f u j 1 val u 1 i 套乙個三重迴圈即可 val l r 可以暴力處理 單詞判重用map include ...

P1026 統計單詞個數

給出乙個長度不超過 200的由小寫英文本母組成的字母串 約定 該字串以每行 20個字母的方式輸入,且保證每行一定為 20個 要求將此字母串分成 k份 1 且每份中包含的單詞個數加起來總數最大 每份中包含的單詞可以部分重疊。當選用乙個單詞之後,其第乙個字母不能再用。例如字串 this中可包含 this...

P1026 統計單詞個數

給出乙個長度不超過200的由小寫英文本母組成的字母串 約定 該字串以每行20個字母的方式輸入,且保證每行一定為20個 要求將此字母串分成k份 1單詞在給出的乙個不超過6個單詞的字典中。要求輸出最大的個數。輸入格式 每組的第一行有二個正整數 p,k p表示字串的行數 k表示分為k個部分。接下來的p行,...