今天偶然遇到了一个有点意思的问题,将它转化成了题目,有点令人怀念: 有一张活动排期表,表上有n组活动的排期。其中,每组活动都会开启若干次,每个活动都有一个唯一id和一个开启时间a,关闭时间b。同组活动不能在相同时间内开启两个及以上。如果同组活动同时开启,则会产生冲突,活动开启失败。问:当前活动表内是 ...
分类:
编程语言 时间:
2020-06-23 01:15:00
阅读次数:
95
gate 用时:看题解一上午,写代码120min 省选打完了,继续停课... gg说要做历年省选题,还要看博客...公开处刑... 每个$modify$操作会复制1倍线段树并修改。 然而实际上不需要维护那么多线段树,维护1棵并在树上dp即可。 对于不同状态的节点有不同的维护操作,需要分类讨论。 (L ...
分类:
其他好文 时间:
2020-06-22 19:26:32
阅读次数:
50
申明:之前是因为线段树一点都不懂才学字典树的,现在学线段树 所以这篇文章在前大部分时间都是写给我自己看的——给一个初学数据结构的蒟蒻我学的 首先,看看度娘是怎么定义线段树的 线段树是一种二叉搜索树,与区间树相似,它将一个区间划分成一些单元区间,每个单元区间对应线段树中的一个叶结点 使用线段树可以快速 ...
分类:
其他好文 时间:
2020-06-21 00:13:35
阅读次数:
59
Contest Info 传送门 Solved A B C D E F G H I J K L M 8 / 13 O O - Ø - O - O - - Ø Ø Ø O 在比赛中通过 Ø 赛后通过 ! 尝试了但是失败了 - 没有尝试 Solutions A - Palindrome 可以将问题转化为 ...
分类:
其他好文 时间:
2020-06-20 22:24:19
阅读次数:
106
原题链接 https://www.luogu.com.cn/problem/P6492 题解 首先题目中的 L 和 R 我们可以分别用 0 和 1来代替; 一个很自然的想法是用线段树维护答案区间的左右端点; 思路简单暴力,但是合并信息的时候需要考虑的情况较多,且复杂度较高,会T; 这里贴上我这个思路 ...
分类:
其他好文 时间:
2020-06-20 21:27:48
阅读次数:
77
ACM-ICPC模板 一、线段树优化的$Dijkstra$ 优先队列版本已经烂大街了,这里就不贴了,而且在下面的分层图里有写 1.普通线段树 时间和内存均是优先队列优化版本的 \(\frac{1}{2}\) int n, m; struct edge { int to, w, nxt; edge() ...
分类:
其他好文 时间:
2020-06-20 21:08:35
阅读次数:
53
考场上最后1h才会,成功没写完。 先考虑个暴力,\(f_{i,j}\) 表示 \(i\) 次操作后 \(tag_j=1\) 的方案数,\(g_{i,j}\) 表示 \(i\) 次操作后 \(j\) 号点到根的路径上的点 tag都是0 的方案数。 定义终点,途径点,终点子树(不含终点),途径点儿子(不 ...
分类:
其他好文 时间:
2020-06-20 18:35:33
阅读次数:
244
令$a_{i,j}(j\le i)$表示第i个人的方案中给第j个人$a_{i,j}$的钱,有以下性质: 1.如果第j个人一定同意(否则就会死)第i个人的方案,那么$a_{i,j}=0$(容易发现一定同意的人就是在上一个不是-1之后的人) 2.否则$a_{i,j}=1+\max_{1\le t<i}a ...
分类:
其他好文 时间:
2020-06-18 19:48:12
阅读次数:
53
题目要求我们在线二维数点。 看到二维很容易想到用树套树维护。时间复杂度为O((n+q)log^2n+点数*logn) 但是其实不用树套树。 题目中没有修改,所以可以对x轴建线段树,每个节点维护一个从小到大排序的表表示这个区间管辖的节点的y值。 每次可以两次二分求得询问区间,再O(点数)询问合法点数。 ...
分类:
其他好文 时间:
2020-06-18 11:06:46
阅读次数:
55
递归 #include <bits/stdc++.h> #define LL long long #define Pi acos(-1.0) #define INF 2147483646 #define eps 1e-9 #define MS 100009 #define mss 17 using ...
分类:
其他好文 时间:
2020-06-17 20:23:20
阅读次数:
69