摘要:
厚颜无耻的发一篇可能是全网最劣解法 我们发现要求给定的串所有不同的循环同构出现的次数,可以直接暴力啊 因为一个长度为$n$的串,不同的循环同构次数显然是不会超过$n$的,所以我们可以直接对每一个循环通过分别求一下其出现次数 求其出现次数当然可以交给$SAM$来搞了 于是我们把所有的串都插入$SAM$ 阅读全文
posted @ 2019-02-12 16:37
asuldb
阅读(216)
评论(0)
推荐(0)
摘要:
"题目" 直接线段树合并就好了 之后在线段树上二分贪心选取金额较少的 如果是左偏树的话就开一个大根堆,根和子树顺次合并,合并之后堆内所有元素总和如果大于$m$就删除堆顶,由于每个元素只会被删除一次,所以复杂度非常科学 代码 cpp include include include include de 阅读全文
posted @ 2019-02-12 14:30
asuldb
阅读(172)
评论(0)
推荐(0)
摘要:
"题目" 多了区间翻转,之后没了 区间翻转的标记记得在$kth$的时候下传 代码 cpp include include include include define maxn 2100005 define re register int n,m,root,len,pos=1; char val[m 阅读全文
posted @ 2019-02-12 13:11
asuldb
阅读(173)
评论(0)
推荐(0)
摘要:
"题目" 发现这样一句话就会导致$T$ 并不是很知道为什么,可能这是某种未定义行为在不同编译器下会有不同后果? 至于这道题就很简单了,几个有关光标位置的操作就用一个变量模拟就好了 插入的话把这个位置转出来构造一棵完美$splay$插入就好了 删除直接转出区间断开的父亲的链接 输出直接转出区间中序遍历 阅读全文
posted @ 2019-02-12 12:25
asuldb
阅读(235)
评论(0)
推荐(0)

浙公网安备 33010602011771号