2023.3.13 闲话

听说 orzmic 是双指游戏,加训了一下,除了两个要拿货币解的曲包 Hard 都 Clear 了,虽然打的不是很好,Special 竟然有三押,差评。

joke3579 一直不更闲话都有人以为他退役了。

SoyTony 为日报写的 浅谈斐波那契数列的一个性质及推广 很好,每一步的 motivation 都很自然(是不是简单东西 motivation 写不写都无所谓),建议都给 SoyTony 点赞 .


从前有一个函数 \(f:2^{[1\,:\,n]}\to\R\),其中 \([1:n]\)\([1,n]\cap\Z\) 听说有这么记的,\(2^S\)\(S\) 的幂集不知道为啥这么记 .

现在的问题是有一个序列 \(\{a_n\}\)\(f\) 可以支持快速加或删一个元素,求每个子集的 \(f\) 值 . \(f\) 接收的是一个下标集合,不过这无关紧要 .

因为可以支持快速加或删一个元素,那么考虑按莫队的思路规划一条不错的路径 .

两个构造:

  1. 根据均摊分析的理论,「二进制加法器」的进位次数是均摊 \(\Theta(1)\) 的,那么按集合下标转为二进制后的数值顺序即可 \(\Theta(2^n)\) 次加入 / 删除 .
  2. 注意到 Gray Code 的定义就是相邻两个差一位,那么就可以 \(\Theta(2^n)\) 次加入 / 删除了 .

Gray Code 挺好的,不过二进制加法器竟然也是同复杂度,好像也就不那么好了 . 可能 Gray Code 的方法要比二进制加法器的常数小 .

Kaguya 的评价:

posted @ 2023-03-13 16:27  Jijidawang  阅读(106)  评论(4编辑  收藏  举报
😅​