Lang:G++
Edit12345678910111213141516171819202122232425262728293031#include <cstdio>#include <cstring>bool vis[101];struct node{node* chd[26];bool f;void init(){memset(chd,0,sizeof(chd));f=0;}}buff[1000006];int cc=0,top;node* newnode(){buff[++cc].init();return buff+cc;}char in[105];char stk[105];node*root=buff;void ins(){char*p;node*cur;for(cur=root,p=stk;*p;++p){if(!cur->chd[*p-'a'])cur->chd[*p-'a']=newnode();cur=cur->chd[*p-'a'];