int getRes(string a,string b,int next[]){
getNext(b,next);
int j = 0;
int i = 0;
int len1 = a.size();
int len2 = b.size();
//for(; i < a.size() && j < b.size();){
while(i < a.size() && j < b.size()){//.size() length 返回的是无符号数,与有符号数比较会出现错误的结果,注意!!!!!!!!
if(j==-1 || a[i] == b[j]){
i++;
j++;
}
else{
j = next[j];
}
cout << j <<" "<<b.size() <<" "<<(b.size()-j)<< endl;
}
if(j == len2){
return i-j;
}
return -1;
}