实数二分,最短路,线段树,记忆化搜索,模拟,状压dp,杜教筛
maze,bird,stone,军训队列,山屋惊魂,彩球问题 ...
分类:
其他好文 时间:
2019-10-28 20:52:24
阅读次数:
97
传送门:https://www.luogu.org/problem/P3373 标记下传,这种东西就是在求和和更改的时候进行pushdown把标记(各种标记,类似于寒冰标记、痛苦标记、穹妹标记……)下传,来节省时间。 还是挺简单的,主要问题处在pushdown上但多看看就会了 ...
分类:
其他好文 时间:
2019-10-28 18:58:44
阅读次数:
113
[TOC] 参考文献 "四叉树" "树套树" 以及和zhoufangyuan巨佬的激烈~~♂~~讨论 参考文献 大家好我口糊大师又回来了。 给你一个$n n$矩阵,然后让你支持两种操作,对子矩阵加值和对子矩阵查和。 暴力写法 对于每一行开一个线段树,然后跑,时间复杂度$n^2logn$。 优点: 1 ...
分类:
其他好文 时间:
2019-10-27 22:27:36
阅读次数:
122
https://www.luogu.org/problem/P2824 submit 做法: 由于将一个普通序列排序很慢,需要nlogn的时间,所以我们试着把它转化为对01序列排序。先来考虑一个简单的问题: 如何将一个01序列排序?(logn的复杂度) 对于这个问题,我们使用线段树来维护。查询一段区 ...
分类:
其他好文 时间:
2019-10-27 20:39:09
阅读次数:
72
#include<iostream> #include<cstdio> #define maxn 100005 using namespace std; struct node{ int l,r,sum,lazy; }tree[maxn<<2]; void pushUp(int root){ tre ...
分类:
编程语言 时间:
2019-10-27 18:16:26
阅读次数:
99
线段树: lazy:记录当前区间更新的值,当需要继续查找时,才将lazy下传到左节点和右节点、 完整代码: (结构体实现) #include<iostream> #include<cstdio> #define maxn 100005 using namespace std; struct node ...
分类:
编程语言 时间:
2019-10-27 16:41:19
阅读次数:
82
description 小w这学期选了门图论课,他在学习点着色的知识。他现在得到了一张无向图,并希望在这张图上使用最多n种颜色给每个节点染色,使得任意一条边关联的两个节点颜色不同。 小w获得一张n个节点m条边的基图,并得到了一份神秘代码。他会根据这份代码的内容构建完整的无向图。 while(1){ ...
分类:
其他好文 时间:
2019-10-27 12:29:26
阅读次数:
105
传送门 "Luogu" 解题思路 线段树合并板子题(也可以 dsu on the tree) 好像没什么好讲的,就是要注意开 long long 。 细节注意事项 + 咕咕咕 参考代码 cpp include include include include include include inclu ...
分类:
其他好文 时间:
2019-10-27 11:05:39
阅读次数:
83
传送门 "Luogu" 解题思路 区间开方以及区间求和。 考虑用线段树来做。 开方操作看似没有任何结合律可言,但这题有另外一个性质: 一个数的初始值不超过 $10^{18}$ ,而这个数被开方6次左右就可以到1或0,并且1和0都是不需要再开方的。 所以我们记一下每个节点代表区间的最大值,若该值小于等 ...
分类:
其他好文 时间:
2019-10-27 10:39:15
阅读次数:
62
简述: 解决线段树无法求区间第k大的问题 代码: 1 ///主席树模版(查询区间第k大) 2 #include <cstdio> 3 #include <cstdlib> 4 #include <cstring> 5 #include <algorithm> 6 #include <cctype> ...
分类:
其他好文 时间:
2019-10-27 01:06:17
阅读次数:
79