給定兩個字串string1和string2,判斷string2是否為string1的子串。
輸入包含多組資料,每組測試資料報含兩行,第一行代表string1(長度小於1000000),第二行代表string2(長度小於1000000),string1和string2中保證不出現空格。
對於每組輸入資料,若string2是string1的子串,則輸出string2在string1中的位置,若不是,輸出-1。
abca123456
45abc
ddd
1提示4-1
#include
#include
#include
int next[1000000];
void getnext(char s)
}int kmp(char s1,char s2)
else
}if(s2[j]=='\0')
return -1;
}int main()
return 0;
}第二:
#include
#include
#include
int next[1000000];
void getnext(char s)
else}}
int kmp(char s1,char s2)
else
}if(s2[j]=='\0')
return i-len2+1;
return -1;
}int main()
return 0;
}
KMP簡單應用
kmp簡單應用 time limit 1000ms memory limit 65536k 給定兩個字串string1和string2,判斷string2是否為string1的子串。輸入包含多組資料,每組測試資料報含兩行,第一行代表string1 長度小於1000000 第二行代表string2 長...
KMP簡單應用
給定兩個字串string1和string2,判斷string2是否為string1的子串。輸入包含多組資料,每組測試資料報含兩行,第一行代表string1 長度小於1000000 第二行代表string2 長度小於1000000 string1和string2中保證不出現空格。對於每組輸入資料,若s...
KMP簡單應用
給定兩個字串string1和string2,判斷string2是否為string1的子串。輸入包含多組資料,每組測試資料報含兩行,第一行代表string1 長度小於1000000 第二行代表string2 長度小於1000000 string1和string2中保證不出現空格。對於每組輸入資料,若s...