ABC284F ABCBAC 题解

ABC284F

这题的正解是 \(Z\) 函数。

如果 \(str = T + T\) 的话,若可以找到连续的分别长为 \(n\) 的两段,且这两段可通过 \(1\) 次翻转变为相同的字符串,那么便一定有解,否则无解。

暴力判断是 \(\mathcal{O}(n)\) 的,时间复杂度直接上天。

可以用哈希 \(\mathcal{O}(1)\) 地判断出两个字符串是否相等。

但这题卡了自然溢出的哈希,所以要自己设定一个模数。

我用的是双哈希。

时间复杂度:\(\mathcal{O}(n)\)

评测记录

posted @ 2023-10-05 20:38  Pengzt  阅读(44)  评论(0编辑  收藏  举报