#include #include #include #include #include #include #include using namespace std; int p = 0; int nt[3000010] , top[3000010] , num[3000010]; char dic[3000010] , mo[10] , ch[35]; void insertt() { int ln = strlen( ch ), fa = 0; for( int i=0 ; i=0 ; i-- ) { fa = af[i]; if( nt[ top[fa] ] != -1 ) { if( dic[ top[fa] ] == ch[i] ) top[fa] = nt[ top[fa] ]; else { for( int j=top[fa] ; j!=-1 ; j=nt[j] ) if( nt[j] != -1 && dic[ nt[j] ] == ch[i] ) { nt[j] = nt[ nt[j] ]; break; } } return ; } } top[0] = -1; return ; } bool ssh() { int ln = strlen( ch ) , fa = 0; for( int i=0 ; i