09 2024 档案
摘要:其实这道题目是从整体二分里面拿的,见这篇题解;其实我是想到这种分治的,但是不知道怎么处理经过 的询问。严格来说这个已经不是整体二分了,因为单个询问不是通过二分做出来的,这个只能叫分治。然后还有用猫树分治做的,可以先去OI-wiki学一下猫树,但都要用到前缀线性基
阅读全文
摘要:看这篇题解 感觉挺简单的一道题目,为啥没做出来捏。。。
阅读全文
摘要:看这篇题解 看到第 小想到整体二分应该是不难的,就是在判断子路径上是难点;其实想到了dfn的(因为学tarjan的时候,dfn的一个小应用就是判断是否是子孙节点),但是没有想到像扫描线这么搞
阅读全文
摘要:与区间动态查询第 小非常像,只是这里搬到了树上上面,仍然考虑类似做法 先考虑不带修的情况。假设我们现在在递归树的第一层,考虑如何统计答案。现在要将权值不超过 的节点加入到树中,然后对于每一个询问,查询路径上有多少个加入了的点,从而将询问分成两组。问题是如何查询路径上有多少加入的点
阅读全文
摘要:看这篇题解 正难则反的思想别忘了,另外一定要注意最后的 是在第一位的
阅读全文
摘要:最开始拿到,没有发现什么想法,于是看样例,发现样例一的 是相等的,而相等的原因就是因为 的第三个字符是 ,所以对 的 排序相当于对 的 排序,于是我们不难猜出这个做法(注意,这个做法里面有一个小错误,“\
阅读全文
摘要:这个看官方题解就好了,写的很清楚,不难想到是用单调栈的 考试的时候做这道题目,显然是考虑贡献,但是方向歪了,对于一个子区间 ,考虑的是其中的最小的元素作为代表元素,然后就一直没想出来(以最大元素作为代表元素显然是对称的,也做不出来),而官方题解是以子区间的右端点作为代表元素的,一下子
阅读全文
摘要:看官方题解就好了,我赛时的时候猜到答案了 这么大数据, 也没办法做,所以只能check比较小的区间,然后就尝试将任意可能的区间 对应到 ,利用充分性去搞,既然 是 的倍数,那么我们只要证明\(\foral
阅读全文
摘要:我们将操作过程中选择进行操作一的卡片称为“抛弃”,显然被抛弃的卡片的顺序无关紧要,所以如果我们确定了抛弃的卡片的编号,我们从小到大进行抛弃就好了 证明非常简单,因为最终解锁了 张卡片,所以中途被抛弃了的卡片的 的和就是 ,而我们最终的得分就是前 张卡片的
阅读全文
摘要:看官方题解吧,我的做法跟官方题解一样 但是不知道怎么想到的,当个思维题做吧
阅读全文
摘要:我的赛时做法是官方题解的做法( 就是枚举 ),但是维护用的是并查集;官方题解的维护应该是这样的:从 倒序枚举到 ,对于当前数字,找到小于 的还没被用过的最大的数字,我们维护一个栈,观察到 单调递增
阅读全文
摘要:比较简单的贪心,主要是维护的过程 这是很显然的一个拓扑序,所以我赛时是直接用拓扑序做的,但是可以看看官方题解,用的扫描线+multiset,类似的搭配在Turtle and Intersected Segments中也见过
阅读全文
摘要:看官方题解或者洛谷的题解就好了,很容易看懂 这里主要就是想DP优化的事(肯定用DP解题,这个很显然);在优化DP转移的过程中,无论是 记录增加的决策,还是数据结构优化DP,一般都是把相同下标的项放在一起(i.e.\(f[i]=max(f[j]+cost(j)+cost(i))=max(
阅读全文
摘要:这题认真读题啊,最开始直接按照差分做了。。。 先简单点想,将 排序,然后每次二分查找对应的应该修改的数 这样可能有个问题,就是我们修改之后的 不是我们最开始的 了,我们应该用真实的 去进行二分,而不是最开始的 ,但是如果我们用真实的 进行二分的话,保证
阅读全文
摘要:这道题目就是找上界+构造上界,见官方题解就好了 我是想到hint 1的,但是没有想到构造上界
阅读全文
摘要:真难啊,见官方题解 官方题解倒数后三段是这样的:在两端数字相同的时候我们会进行删除, 会增加, 会减少(注意两个 都是针对数组 而言的,而不是当前考虑的子串),但是会发现两者的和不变,于是考虑统计 与最初相同的数量就好了
阅读全文
摘要:看这篇题解 一定要学会这种打表SG函数的方法,实在证明不出来,又很显然是SG函数的就要学会打表
阅读全文
摘要:看这篇题解 主要是第一段,这种等效转换的操作在图论中常有
阅读全文
摘要:这里主要讲一下蓝书法一的等效方法的正确性。假设我们已经知道了最终的答案的树的样子,设为 ,设高度为 ,则答案为 ;设高度为 的节点集合为 ,那么我们可以知道,在 中删掉 中的节点得到的新树的 的代价就等于\(
阅读全文
摘要:设题目给的图是 ,其源点汇点分别是 假设我们先求有源汇上下界可行流,我们发现此时跟无源汇上下界可行流的差别就是 没有流量守恒,于是我们添加一条边 ,其容量限制为无穷,设添加边后的图为 ,那么 的可行流与 的可行流(注意
阅读全文
摘要:注意这里给的有向图不是一个网络,因为是没有源点汇点的;相当于就是构造一个流函数 (定义域是每条边),使其满足流量守恒和容量限制 我们没学过有下界的一般图的最大流算法,所以这里尝试转化成无下界的网络最大流算法;也就是说对于原图 ,我们要构造一个新网络 ,使得 的一个
阅读全文
摘要:借助这道题目,讲一下所有最大流建模的思路 对于原问题的解集 和我们建模之后的网络的可行流集合 ,我们需要证明 (前面一个绝对值符号表示 的值,后面一个绝对值符号表示 的最大流)且\(\forall t
阅读全文
摘要:算法执行过程见蓝书和OI-wiki,当前弧优化见OI-wiki的描述,代码见下 #include<bits/stdc++.h> #define ll long long using namespace std; const int N=10010,M=100010,inf=1<<29; int no
阅读全文
摘要:代码见下 #include<bits/stdc++.h> #define ll long long using namespace std; const int N=1010,M=10010,inf=1<<29; int End[M<<1],Next[M<<1],Len[M<<1],Last[N];
阅读全文