ignatius最近遇到乙個難題,老師交給他很多單詞(只有小寫字母組成,不會有重複的單詞出現),現在老師要他統計出以某個字串為字首的單詞數量(單詞本身也是自己的字首).
input
輸入資料的第一部分是一張單詞表,每行乙個單詞,單詞的長度不超過10,它們代表的是老師交給ignatius統計的單詞,乙個空行代表單詞表的結束.第二部分是一連串的提問,每行乙個提問,每個提問都是乙個字串.
注意:本題只有一組測試資料,處理到檔案結束.
output
對於每個提問,給出以該字串為字首的單詞的數量.
sample input
bananasample outputband
beeabsolute
acmba
bband
abc
231這個題就是模擬乙個字典樹 每乙個節點最多有26個子節點(因為字母只有26個吖)0
要點都在**裡辣
#include#include#include#include#includeusing namespace std;
struct tree
num=0;
}};tree root;
void insert(char str)
p=p->next[str[i]-'a'];//keep going
p->num++;//這個字元出現過 要給他加一 }}
int search(char str)
return p->num;
}int main()
while(scanf("%s",str)!=eof)
}
統計難題 hdu1251字典樹
題意 統計一某個單詞為字首的單詞的數量。思路 簡單的字典樹。字典樹的操作就三個乙個是初始化,乙個是插入建樹,另乙個查詢。單詞的查詢,就是樹的深度遍歷,找到後輸出他的出現次數 include include includeusing namespace std struct trie struct t...
統計難題 HDU 1251 (字典樹)
ignatius最近遇到乙個難題,老師交給他很多單詞 只有小寫字母組成,不會有重複的單詞出現 現在老師要他統計出以某個字串為字首的單詞數量 單詞本身也是自己的字首 input 輸入資料的第一部分是一張單詞表,每行乙個單詞,單詞的長度不超過10,它們代表的是老師交給ignatius統計的單詞,乙個空行...
字典樹 HDU 1251 統計難題
這是重寫的,讓我感覺到每一次的理解程度都在增加 include include include include using namespacestd structnode node head newnode 用c 的new動態申請記憶體其實delete和new是一對兒哦 node now node ...