int main(){ scanf("%d%d%s", &n, &m, str); for(int i=0; i<m; i++) printf("%c", str[n+i]=kmp(n+i)); puts(""); return 0; }
int main() { char str[MX] = "AABCA", p[MX] = "AAA"; int res = kmp(str,strlen(str), p, strlen(p)); printf("匹配第一个开始位置:%d\n", res); return 0; }
int main(){ char s[]="BBC ABCDAB ABCDABCDABDE"; char t[]="ABCDABD"; int ss =sizeof(s)/sizeof(s[0]); int ts =sizeof(t)/sizeof(t[0]); printf("%s : %d\n", s, ss); printf("%s : %d\n", t, ts); printf("%d\n",kmp(s,ss,t,ts)); return 0; }
int main(int argc, char **argv) { if (argc < 2){ return 0; } printf("index: %d\n", kmp(argv[1], argv[2])); return 0; }
int main(){ int cas;while(~scanf("%d",&cas)){ while(cas--){ scanf("%s%s",str2,str1); int ans=kmp(str1,str2); printf("%d\n",ans); } } return 0; }
int main() { char s[MAX], t[MAX]; printf("Please input:\n"); scanf("%s", s); scanf("%s", t); printf("Output:\n"); printf("%d\n", kmp(s, t)); return 0; }
void solve(std::istream& in, std::ostream& out) { int t; in>>t; while(t--){ in>>a; in>>b; n = strlen(a), m = strlen(b); getp(); out<<kmp()+1<<endl; } }
bool isMatch(string s, string p) { if (shrinkString(s, p)) { dividePattern(p); int t = sub.size(); for (int i = 0; i < t; i++) if (!kmp(i, s)) return false; return true; } return false; }
int LCS(char *s1, int l1, char *s2, int l2, int &ansi, int &ansj) { int i,j,k,l,ans=0; ansi=0; ansj=0; for(i=0; i<l1-ans; i++) { makefail( s1+i, l1-i ); kmp( s2, l2, s1+i, l1-i, 0, l, j); if(l>ans) { ans=l; ansi=i; ansj=j; } } return ans; }
int main(void){ int N; scanf("%d",&N); while(N--){ scanf("%s",W); scanf("%s",T); getNext(); printf("%d\n",kmp()); } return 0; }
int main() { int T = 0, N = 0, M = 0; scanf("%d", &T); while(T--){ scanf("%s", Pattern); scanf("%s", Target); printf("%d\n", kmp(strlen(Target), strlen(Pattern))); } }
void main() { int *x; char *sub; char *str; clrscr(); strcpy(sub, "live"); strcpy(str, "I will live forever, or die trying."); kmp(str, sub); getch(); }
int main(int argc, char *argv[]) { size_t table[32]; size_t rc; char *key = "test"; char *str = "this is a test"; rc = kmp(key, table, strlen(key), str, strlen(str)); assert(rc == 10); return 0; }
int main(int argc, char **argv) { int tests; scanf("%d", &tests); while(tests--) { init(); get_next(); kmp(); printf("%d\n", count); } }
int main (void ) { int i, n, l; scanf ("%d", &n); scanf ("%s", s); scanf ("%s", t); for (i=0;i<n;i++) t[i+n]=t[i]; t[2*n]='\0'; l = kmp (t, s); printf ("%d\n", l); return 0; }
int main(int argc, char *argv[]) { size_t table[32]; size_t rc; char *key = "12"; char *str = "11111111121111"; rc = kmp(key, table, strlen(key), str, strlen(str)); assert(rc == 8); return 0; }
int main() { std::string pattern = "ababaca"; KMP kmp(pattern); std::string text = "abababaca"; int offset = kmp.search(text); std::cout << text << std::endl; for (int i = 0; i < offset; i++) std::cout << " "; std::cout << pattern << std::endl; }
int main(int argc, const char *argv[]) { char target[] = "ABC ABCDAB ABCDABCDABDE"; char *ch = target; char pattern[] = "ABCDABD"; int i; i = kmp(target, strlen(target), pattern, strlen(pattern)); if (i >= 0) printf("matched at: %d\n", i); return 0; }
int main(int argc, char** argv){ if(argc!=3){ printf("Usage: %s <fasta file> <pattern>\n",argv[0]); exit(-1); } for(auto pair_it: read_file(argv[1])){ const char* needle = argv[2]; const char* haystack = pair_it.second.c_str(); kmp(haystack, pair_it.second.length(), needle, pair_it.first.length()); } }
main(){ int N; char P[10001], T[1000001]; scanf("%d", &N); while ( N-- ) { scanf("%s%s", P, T); kmp(T, P); } return 0; }
void main() { char t[20],p[20],i; printf("Enter String"); scanf("%s",t); printf("Pattern"); scanf("%s",p); fail(p); if((i=kmp(t,p))==-1) printf("Pattern not found"); else printf("Pattern found at index %d",i); }
int main() { scanf("%s\n%s",a,s); lena=strlen(a);lens=strlen(s); kmp(); if(res) { printf("%d\n",res); for(int i=0;i<res;i++) printf("%d\n",ans[i]+1); } else printf("There must be something wrong."); return 0; }
int main() { //scanf( "%s%s" , &t , &p ); //for( int i = 1 ; i <= 5 ; ++ i ) printf( "%c" , t[ i ] ); printf("\n"); //printf( "%d %d\n" , strlen( t ) , strlen( p ) ); while( scanf( "%d" , &n ) not_eq EOF ) { //printf( "%d\n" , n ); init(); kmp(); } return 0; }
int main() { int n,pos,l1,l2,v,u; scanf("%d",&n); while(n--) { scanf("%s",str1); scanf("%s",str2); l1=strlen(str1); l2=strlen(str2); u=0;pos=kmp(str1,str2,l1,l2); if(pos!=-1) u=l2; else if(i==l1 && j>0 &&(str1[l1-1]==str2[j-1])) u=j; v=0;pos=kmp(str2,str1,l2,l1); if(pos!=-1) v=l1; else if(i==l2 && j>0 && (str2[l2-1]==str1[j-1])) v=j; printf("%d\n",l1+l2-(max(u,v))); } return 0; }
int main() { int T; scanf("%d", &T); for(int zz=1; zz<=T; ++zz) { scanf("%s", s); scanf("%s", w); kmp_table(); printf("Case %d: %d\n", zz, kmp()); } return 0; }
int main() { int tc, i; scanf("%d", &tc); for(i = 0; i <tc; i++) { scanf("%s %s", str, substr); printf("Case %d: %d\n", i + 1, kmp(str, substr)); } return 0; }
int main(){ string text = "abcabcdabaabdacdababcabb"; string pat = "abc"; //string text = "abcabc"; //string pat = "abc"; vector<int> shifts = kmp(pat, text); for(auto shift: shifts){ cout << text.substr(shift, pat.size()) << endl; } }
int main(int argc, char *argv[]) { char str[] = "aaaaaaaaabbaaacbaaaaabc"; char substr[] = "baaaaabc"; int ret = kmp(str, substr); if (0 != ret) printf("%s\n", str + ret); else printf("not found\n"); exit(EXIT_SUCCESS); }
int main(){ int t; scanf("%d", &t); while(t--){ scanf("%s", P); m = strlen(P); n = 2*m; strcpy(T, P); strcat(T, P); kmpPreprocess(); kmp(); printf("%d\n", occI[1]); if(t) printf("\n"); } return 0; }
int numStringMatching(string filename,string toSearch) { ifstream fich(filename.c_str()); if (!fich) { cout << "Erro a abrir ficheiro de leitura\n"; return 0; } string line1; int num=0; while (!fich.eof()) { getline(fich,line1); num+=kmp(line1,toSearch); } fich.close(); return num; }