上一页 1 ··· 6 7 8 9 10 11 12 13 下一页
摘要: title 字符串 边境 边境 是字符串的一段相等的前缀和后缀。 阅读全文
posted @ 2018-10-07 21:14 Utoрia 阅读(106) 评论(0) 推荐(0) 编辑
摘要: 其实你应该在百度上搜索“吉司机线段树” 区间取最值、区间求和问题 考虑这样一种做法:线段树维护区间的最大值、次大值、最大值个数,在询问值≥最大值时直接退出,询问值$\in(max2,max)$时更新信息并打标记,询问值≤次大值时递归左右儿子区间。 由于取最值操作时不同数字种数减少,而递归操作的次数是 阅读全文
posted @ 2018-10-07 09:49 Utoрia 阅读(1955) 评论(0) 推荐(0) 编辑
摘要: 最近考试发挥稳定,思维强度高,代码失误率低。虽然看不出与Haik lme Sumvac有什么关系,但提升可能的确是有的。之前haik也是确有其事。之前我提出了一个概念叫NOIP+,亦或二级算法题,是最令人喜欢的题。它完全贯彻了Sjan lme Gume,一个unwheeling depending和 阅读全文
posted @ 2018-10-03 22:15 Utoрia 阅读(115) 评论(0) 推荐(0) 编辑
摘要: 欧拉准则 $a$是$p$的二次剩余等价于$a^{\frac{p 1}{2}}\equiv 1\pmod p$,$a$不是$p$的二次剩余等价于$a^{\frac{p 1}{2}}\equiv 1\pmod p$。 Cipolla 若$a^2 n$不是$p$的二次剩余,则$p$的二次剩余为$(a+\s 阅读全文
posted @ 2018-10-03 22:09 Utoрia 阅读(381) 评论(0) 推荐(0) 编辑
摘要: 首先学习基数排序。 这一块是对y数组操作,先将n k到n 1放进去,再将[0,n)中sa[i] k =0的sa[i] k放进去。 这是处理新的x数组。y是充当原来的x。其他细节与代码相同。 阅读全文
posted @ 2018-10-01 15:37 Utoрia 阅读(136) 评论(0) 推荐(0) 编辑
摘要: 之前是假会,现在是真会。而且我还写了博客。不写博客的东西总有一天会忘。 概述 对于线性基中所有的子集的异或和的集合与线性基中的插入所有数的所有子集的异或和的集合相等。 即线性基代表了原数集中的所有异或和。 线性基中所有子集的异或和两两不同。继而不同的异或和数=$2^{|线性基|}$。 操作 插入 从 阅读全文
posted @ 2018-09-28 23:25 Utoрia 阅读(149) 评论(0) 推荐(0) 编辑
摘要: 用于求稀疏图上的全局最短路。 考虑将带负权的图变为不带负权的图,再跑$n$次Dijkstra。 方法:新建点S,向所有点连边权为$0$的边,然后以S为起点跑SPFA。然后将每条边的权值重新赋为$dist[u\Rightarrow v]+dj[u] dj[v]$即可。 阅读全文
posted @ 2018-09-27 20:38 Utoрia 阅读(368) 评论(0) 推荐(0) 编辑
摘要: 二分采用以下模板化的代码: 最后得到的答案满足checked(calc(ans))&&!checked(calc(ans+1))。 注意,该结构 不能修改 。能修改的是calc()和checked()。如果限制条件要求方向相反,就将限制条件反转一下。 20180928Upd:也可采用另一种模板: 一 阅读全文
posted @ 2018-09-27 16:56 Utoрia 阅读(178) 评论(0) 推荐(0) 编辑
摘要: 边权皆为正时,有最短路DAG。 最短路DAG代表了从原点到每个点的 所有 最短路。 最短路树个数=最短路DAG生成树个数。用DAG生成树计数即可。复杂度$O(n+m)$。 阅读全文
posted @ 2018-09-27 16:47 Utoрia 阅读(478) 评论(0) 推荐(0) 编辑
摘要: 概述 点分树代表了树上的所有路径,如同分治代表了序列中的所有区间。在点分树节点上统计经过这个点的树链的答案。 距离k联通块修改/询问 此类问题的做法是通用的。 对每个点分树结点开两棵动态开点线段树,一棵记录以结点到自己的距离为关键字的结点信息,另一棵记录以结点到点分树父亲的距离为关键字的结点信息。 阅读全文
posted @ 2018-09-25 21:17 Utoрia 阅读(151) 评论(0) 推荐(0) 编辑
上一页 1 ··· 6 7 8 9 10 11 12 13 下一页