传送门:A Simple Problem 题意 给定两个序列s1和s2,同样的数字可以用相同的别的数字代替(并且也可以是出现过的数字),问s2在s1中出现了几次. 题解 首先预处理一下这两个序列,因为数字的位置是不会变得,所以把每个数字用当前位置和前一次出现的位置的差表示,如果是第一次出现,用-1表示,这里为什么是-1呢,不能比-1更大,但可以更小,不然如果匹配的时候 j=0,那么如果 s[i]=0 这样判断的就是不是该满足的那个条件了,这样是不对的.然后就是kmp匹配了,匹配的判断条件改一下就…