HihoCoder第二週(字典樹)

2021-07-31 20:46:11 字數 776 閱讀 7731

輸入的第一行為乙個正整數n,表示詞典的大小,其後n行,每一行乙個單詞,單詞由不超過10個的小寫英文本母組成,可能存在相同的單詞,此時應將其視作不同的單詞。接下來的一行為乙個正整數m,表示詢問的次數,其後m行,每一行乙個字串,該字串由不超過10個的小寫英文本母組成,表示乙個詢問。對於每乙個詢問,輸出乙個整數ans,表示詞典中以給出的字串為字首的單詞的個數。

樣例輸入

5 babaab

babbbaaaa

abba

aaaaabaa

babaababb

5 babb

baabaaa

bab

bb bbabbaab

樣例輸出

1 0

3 0

0

#include

#include

using

namespace

std;

typedef

struct trie

trie;

int main()

else

p = p->next[j];}}

cin >> m;

while (m--)

p = p->next[j];

}if (flag) cout

<< '0'

<< endl;

else

cout

<< p->count << endl;

}return

0;}

逆序單詞 HIhoCoder 1366 字典樹

在英文中有很多逆序的單詞,比如dog和god,evil和live等等。現在給出乙份包含n個單詞的單詞表,其中每個單詞只出現一次,請你找出其中有多少對逆序單詞。第1行 1個整數,n,表示單詞數量。2 n 50,000。第2.n 1行 每行1個單詞,只包含小寫字母,每個單詞長度不超過16個字母。保證每個...

字典樹 與 01字典樹

字典樹可以降低空間複雜度 01字典樹可以降低時間複雜度。字典樹 又稱單詞查詢樹,trie樹,是一種樹形結構,是一種雜湊樹的變種。典型應用是用於統計,排序和儲存大量的字串 但不僅限於字串 所以經常被搜尋引擎系統用於文字詞頻統計。它的優點是 利用字串的公共字首來減少查詢時間,最大限度地減少無謂的字串比較...

字典樹實現 10 字典樹

字典樹就是一種樹形結構,優點是利用字串的公共字首來節約儲存空間,比如加入 abc abcd abd b bcd efg hik 構造出的字典樹如下 基本特徵 下面我們先實現乙個字典樹,假設所有單詞的字元僅僅是 a z 幷包含以下功能 void insert string word 新增word,可以...