摘要: 为了反驳隔壁很对劲的太刀流,并不对劲的片手流决定与之针锋相对,先一步发表cdq分治解三维偏序。 很对劲的太刀流在这里-> 参照一、二维偏序的方法,会发现一位偏序就是直接排序,可以看成通过排序使第一维无效。二维偏序是排序+树状数组,就是先通过排序消除了第一维的影响,再通过树状数组进行统计。那么以此类推 阅读全文
posted @ 2018-02-25 21:35 echo6342 阅读(9035) 评论(3) 推荐(4)
该文被密码保护。 阅读全文
posted @ 2018-02-24 20:34 echo6342 阅读(1) 评论(0) 推荐(0)
该文被密码保护。 阅读全文
posted @ 2018-02-24 20:32 echo6342 阅读(3) 评论(0) 推荐(0)
该文被密码保护。 阅读全文
posted @ 2018-02-24 18:25 echo6342 阅读(3) 评论(0) 推荐(0)
该文被密码保护。 阅读全文
posted @ 2018-02-24 18:24 echo6342 阅读(9) 评论(0) 推荐(0)
摘要: 有些时候,后缀自动机并不能解决某些问题,或者解决很麻烦。这时就有各种神奇的字符串算法了。 manacher算法用来O(|S|)地求出字符串S的最长的回文子串的长度。这是怎么做到的呢? 并不对劲的暴力选手在刚见到求字符串S的最长的回文串的长度这个问题时,第一反应就是枚举每一个位置为回文串的对称轴,再暴 阅读全文
posted @ 2018-02-24 11:45 echo6342 阅读(230) 评论(0) 推荐(0)
摘要: 对于带修改的区间求和能做到O(n log n)预处理,O(log n)查询;而不带修改的可以做到O(n)预处理,O(1)查询。那么不带修改的区间最值能做到O(1)查询吗? 区间最值有这样一个性质:对于一段区间的两个子区间,如果它们覆盖了整个区间(可以有重叠部分),那么这两段区间各自的最大(或最小)值 阅读全文
posted @ 2018-01-30 09:07 echo6342 阅读(231) 评论(0) 推荐(0)
摘要: 为了反驳隔壁很对劲的太刀流,并不对劲的片手流将与之针锋相对。 很对劲的斜堆、左偏树简明教程-> 它们是可并堆的两种实现方式。 (还是假装二叉堆只包括小根堆。) 斜堆的缺点在于,每次合并的堆大小不同,无条件交换左右子树可能遇到某些坑孙子的数据,复杂度会变得玄学。 左偏树是在斜堆上有所改进的。根据斜堆的 阅读全文
posted @ 2018-01-29 19:22 echo6342 阅读(340) 评论(0) 推荐(0)
摘要: 为了反驳隔壁很对劲的太刀流,并不对劲的片手流将与之针锋相对。 很对劲的斜堆、左偏树简明教程-> 它们是可并堆的两种实现方式。 (假装二叉堆只包括小根堆。) 二叉堆该如何合并?先想一种暴力的。 现在有根的键值较小的二叉堆A,键值较大的二叉堆B。 在合并后,A的根肯定还是根。若A的左、右子树都不为空的话 阅读全文
posted @ 2018-01-29 18:22 echo6342 阅读(369) 评论(0) 推荐(0)
该文被密码保护。 阅读全文
posted @ 2018-01-29 16:03 echo6342 阅读(8) 评论(0) 推荐(0)