题意 给出两个字符串\(s\)和\(t\),设\(S\)为\(s\)的任意一个非空前缀,\(T\)为\(t\)的任意一个非空前缀,问\(S+T\)有多少种不同的可能. Solution 看了一圈,感觉好像就我一个人写的\(kmp+hash+\)二分. 直接算好像不是很好算?先容斥一下,不同\(=\)总方案\(-\)相同. 显然总方案为两个字符串的长度的乘积,考虑相同的情况怎么算. 相同即两组\(S\)和\(T\)不同,但\(S+T\)本质相同的情况. 这个东西怎么算呢.... (感觉看图会好理解…