02 2017 档案

摘要:整体二分是一个离线的做法 目前可以解决求区间第k大问题 当然划分树主席树都可以的样子.. 为什么我老学一些解决同种问题的算法.. 主要思想大概是这样的: 如果要求[l,r]的区间第K大 而这个区间内如果有多于K个数字 那么多出来的数字其实是不会影响到什么的 所以我们整体二分一下答案 即 把二分值对于 阅读全文
posted @ 2017-02-28 10:16 天翎月 阅读(301) 评论(0) 推荐(0) 编辑
摘要:一个长度为n的数组 每次对lr区间进行修改 如果要修改i 则对i i*2 i*3...都修改 最后单点查询值 思想是利用树状数组维护每一个区间的更新值 查询的时候得出这个点的所有因子的查询值的和 加上这个点的最初值 因为对树状数组理解不深再次错过绝杀... 由于是维护每个点的修改量 所以每次修改 都 阅读全文
posted @ 2017-02-16 17:42 天翎月 阅读(211) 评论(0) 推荐(0) 编辑
摘要:DanceLink是一个可以解决精确覆盖和重复覆盖的搜索算法 重复覆盖就是在精确覆盖的remove等处做改变 都是十字循环链表 精确覆盖 给出一个01矩阵 要求选择几行 使每一列都有且仅有一个1 在求所得行尽量小的视乎 f()函数可以进行一个剪枝 可以用来解决数独 并且速度很快 本质还是搜索 但是由 阅读全文
posted @ 2017-02-12 19:19 天翎月 阅读(374) 评论(0) 推荐(0) 编辑
摘要:看了几天学会了模板的写法 主席树主要是用来求区间第k大的 划分树也可以解决 但是划分树只能静态 如果要动态(带修改点) 就可以结合树状数组 还有一类树上主席树 like求两个点之间的第k大点权 就可以用在线lca求出lca来 然后用 x y lca fa[lca] 来做一下加减 求第k大 虽然知道解 阅读全文
posted @ 2017-02-05 18:16 天翎月 阅读(196) 评论(0) 推荐(0) 编辑
摘要:题意 : 给出一颗树 每个点都有一个颜色 选一个点作为根节点 使它的子树各自纯色 我想到了缩点后check直径 当<=3的时候可能有解 12必定有解 3的时候需要check直径中点的组成点里是否有一个点连接了另外所有的点 如果有就是ans 没有就是no 这个方法是对了 不过比较麻烦..需要很多che 阅读全文
posted @ 2017-02-03 22:17 天翎月 阅读(113) 评论(0) 推荐(0) 编辑