字典樹 統計難題

2022-07-30 15:24:18 字數 998 閱讀 2615

ignatius最近遇到乙個難題,老師交給他很多單詞(只有小寫字母組成,不會有重複的單詞出現),現在老師要他統計出以某個字串為字首的單詞數量(單詞本身也是自己的字首).

input輸入資料的第一部分是一張單詞表,每行乙個單詞,單詞的長度不超過10,它們代表的是老師交給ignatius統計的單詞,乙個空行代表單詞表的結束.第二部分是一連串的提問,每行乙個提問,每個提問都是乙個字串.

注意:本題只有一組測試資料,處理到檔案結束.

output對於每個提問,給出以該字串為字首的單詞的數量.

sample input

banana

band

beeabsolute

acmba

bband

abc

sample output

231

0字典樹入門。個人理解,p用來表示下乙個字母儲存的位置,k變化確保不同的詞儲存在不同且唯一的位置,vis陣列記錄某乙個路徑中某個字母被儲存過的次數(輸入的次數)。

#include #include 

#include

using

namespace

std;

#define n 1000100

int tire[n][26]; //

用來儲存樹

int vis[n]; //

用來記錄次數

char s[15

];int k = 1

;void

build()

p =tire[p][c];

vis[p]++;

}}int

se_arch()

else p =tire[p][c];

}return

vis[p];

}int

main()

while(~scanf("%s"

, s))

return0;

}

字典樹 統計難題

描述 ignatius最近遇到乙個難題,老師交給他很多單詞 只有小寫字母組成,不會有重複的單詞出現,現在老師要他統計出以某個字串為字首的單詞數量 單詞本身也是自己的字首 輸入輸入資料的第一部分是一張單詞表 不超過15000個 每行乙個單詞,單詞的長度不超過10,它們代表的是老師交給ignatius統...

統計難題(字典樹)

description ignatius最近遇到乙個難題,老師交給他很多單詞 只有小寫字母組成,不會有重複的單詞出現 現在老師要他統計出以某個字串為字首的單詞數量 單詞本身也是自己的字首 input 輸入資料的第一部分是一張單詞表,每行乙個單詞,單詞的長度不超過10,它們代表的是老師交給ignati...

統計難題 (字典樹)

problem description ignatius最近遇到乙個難題,老師交給他很多單詞 只有小寫字母組成,不會有重複的單詞出現 現在老師要他統計出以某個字串為字首的單詞數量 單詞本身也是自己的字首 input 輸入資料的第一部分是一張單詞表,每行乙個單詞,單詞的長度不超過10,它們代表的是老師...