Lang:G++
Edit12345678910111213141516171819202122232425262728293031#include<iostream>#include<vector>#include<cstring>using namespace std;struct trie{vector<trie *> child;int count;trie(){child.resize(26,NULL);count=1;}};void buildTrie(trie * root,char *a){int i=0;while(i<strlen(a)){int index=a[i]-'a';if(root->child[index]==NULL)root->child[index]=new trie();elseroot->child[index]->count++;root=root->child[index];i++;}}int preCount(trie * root,char *a){int i=0;