//Knuth, Morris, Pratt String Matching Algorithm #include #include #include using namespace std; int kmp(string p, string t) { int m=p.size(),n=t.size(); if(n next(m,-1); int i=0,j=1; while(j0&&p[i]!=p[j])i=next[i]; } i++;j++; } i=0;j=0; while(j-1&&p[i]!=t[j])i=next[i]; i++;j++; if(i==m)return j-i; } return -1; } int main() { cout<