P6553 Strings of Monody

这里提供一种无脑的非数据结构方法。

很明显不能暴力,我们尝试记录下字符串 145 出现次数,这样单次修改时可以做到最坏 O(n)O(n) 的复杂度,与暴力一样。但是询问可以做到 O(log2n)O(\log_2 n) 复杂度,也就是快速幂的复杂度。

但是为了区别与其他题解:

我用哈希!

哈希通常是字符串哈希,但是单个字符不也可以哈希吗?因为我哈希没学好,所以我们预处理时用 rand() 函数随机找到一个值,在哈希时与 char 类型字符哈希。加上快速幂和各种玄学优化。

但是明显我们可以预处理,因为只会出现 145,所以考虑预处理 145 的哈希值,这样就无需重复计算。

至于时间,也不是很长,不开 O2 也就 160ms160ms

不过好歹能过,100ms100ms 限制有点毒瘤啊!

代码过长,点这里

posted @   HappyBobb  阅读(4)  评论(0编辑  收藏  举报  
相关博文:
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示