#include//685查詢字串
struct trie;
trie *root;;
int turn(char c)//把字元轉換成陣列序號
void insert(char *s)//插入乙個字串
p=p->next[turn(*s)];
s++;
} p->count++;
}int tfind(char *s)
return p==null?0:p->count;//注意如果字串不存在也是0;不存在時候p==null
}void del(trie *p)//刪除,oj提交的時候建議不刪除,因為這個也耗時間。系統自動會**,但是自己寫的時候要注意。
delete p;
}int main()
{ int t;
int n,m;
int i;
char s[20];
scanf("%d",&t);
getchar();
while(t--)
{ root=new trie;
for(i=0;i<30;i++)
root->next[i]=null;
root->count=0;
scanf("%d%d",&n,&m);
for(i=0;i我也是即學即用。今天剛看的字典樹,今天用上的第乙個程式、自己理解不難,我就不加上注釋了。
NYOJ685 查詢字串(字典樹題
時間限制 1000 ms 記憶體限制 65535 kb 難度 3 輸入第一行包含乙個整數t t 100 表示測試資料組數。接下來每組資料第一行包含兩個整數n,m n,m 100000 分別表示有n個字串,小明要問你m次。接下來n行,每行包含乙個字串,長度不大於15。接下來m行,每行包含乙個字串,表示...
NYoj 685 查詢字串
描述 小明得到了一張寫有奇怪字串的紙,他想知道一些字串出現了多少次,但這些字串太多了,他想找你幫忙,你能幫他嗎?輸入字元包括所有小寫字母 輸入第一行包含乙個整數t t 100 表示測試資料組數。接下來每組資料第一行包含兩個整數n,m n,m 100000 分別表示有n個字串,小明要問你m次。接下來n...
nyoj685 查詢字串 map
時間限制 1000 ms 記憶體限制 65535 kb 難度 3 描述 小明得到了一張寫有奇怪字串的紙,他想知道一些字串出現了多少次,但這些字串太多了,他想找你幫忙,你能幫他嗎?輸入字元包括所有小寫字母 輸入 第一行包含乙個整數t t 100 表示測試資料組數。接下來每組資料第一行包含兩個整數n,m...