这是
![](/icons/34438yi.gif)
![](/icons/34438de.gif)
![](/icons/34438dou.gif)
![](/icons/34438de.gif)
![](/icons/34438de.gif)
基本
![](/icons/34438de.gif)
![](/icons/34438zifu.gif)
![](/icons/34438yi.gif)
![](/icons/34438hanshu.gif)
![](/icons/34438dou.gif)
![](/icons/34438hanshu.gif)
![](/icons/34438dou2.gif)
但是text太大
![](/icons/34438de.gif)
![](/icons/34438dou.gif)
![](/icons/34438de.gif)
![](/icons/34438de.gif)
![](/icons/34438yi.gif)
#
![](/icons/34438include.gif)
#
![](/icons/34438include.gif)
#
![](/icons/34438include.gif)
![](/icons/34438string.gif)
void usage(char * prog)
{
pr
![](/icons/34438int.gif)
exit(123);
}
/*Algorithm~*/
void rk_sm(char * patt, char * text,
![](/icons/34438int.gif)
![](/icons/34438int.gif)
![](/icons/34438int.gif)
![](/icons/34438int.gif)
{
![](/icons/34438int.gif)
long long h = 1;
![](/icons/34438int.gif)
![](/icons/34438int.gif)
for(i = 0; i <= patt_length -1; i
![](/icons/34438jiajia.gif)
h *= c;
h = h % q;
for(i = 0; i < patt_length; i
![](/icons/34438jiajia.gif)
{
p = (c * p + patt[i])%q;
t = (c * t + text[i])%q;
}
for(s = 0; s < text_length - patt_length + 1; s
![](/icons/34438jiajia.gif)
{
![](/icons/34438if.gif)
![](/icons/34438dd.gif)
{
flag = 1;
for(i = 0; i < patt_length; i
![](/icons/34438jiajia.gif)
![](/icons/34438if.gif)
flag = 0; //
![](/icons/34438set.gif)
[Page]
![](/icons/34438if.gif)
{
pr
![](/icons/34438int.gif)
pr
![](/icons/34438int.gif)
pr
![](/icons/34438int.gif)
for(k = 1; k <= s; k
![](/icons/34438jiajia.gif)
pr
![](/icons/34438int.gif)
pr
![](/icons/34438int.gif)
![](/icons/34438return.gif)
}
}
![](/icons/34438if.gif)
t = (c * (t - text[s]* h) + text[s + patt_length])%q;
}
pr
![](/icons/34438int.gif)
}
![](/icons/34438int.gif)
![](/icons/34438main.gif)
![](/icons/34438int.gif)
![](/icons/34438zhk2.gif)
{
char * text = NULL;
char * pattern = NULL;
[Page]
![](/icons/34438if.gif)
usage(argv[0]);
![](/icons/34438else.gif)
{
text = argv[1];
pattern = argv[2];
}
pr
![](/icons/34438int.gif)
pr
![](/icons/34438int.gif)
rk_sm(pattern, text, strlen(pattern), strlen(text), 26, 13);
![](/icons/34438return.gif)
}
最新评论