https://vjudge.net/contest/573644#problem/K
字符串匹配,但卡空间。
考虑哈希做法,不妨把 \(s\) 每 \(20000\) 个字符哈希成一个字符,于是 \(s\) 长度只有 \(500\),可以跑个 KMP。
于是对于 \(t\),我们只需要同时维护 \(20000\) 个 KMP 的指针。
但如果字符串长度不是 \(20000\) 的倍数怎么办呢?注意到我们可以手动 hash 匹配最后一个不完整区间,gg!
复杂度线性,正确性不好说,因为要 hash!
标签:Mianyang,Space,Pattern,20000,Low,题解 From: https://www.cnblogs.com/imakf/p/17612260.html