07 2021 档案
摘要:[SDOI2011]染色 考虑直接维护一个类。 写merge。 inline void merge(S &a,S b,S c){//b + c -> a a.v = b.v + c.v; if(b.li == 0){ a.li = c.li; a.ri = c.ri; }else{ if(c.li
阅读全文
摘要:[HEOI2016/TJOI2016]排序 考虑二分答案,那么每次就要求出第$p$位上的数字大还是小。 考虑直接变换$01$来进行排序操作,那么直接用一个区间赋值,区间查询即可。 二分后通过$while$保证答案正确。 // Problem: P2824 [HEOI2016/TJOI2016]排序
阅读全文
摘要:构造,人类智慧题。 使用数学公式直接求出构造方法。可能需要一些数学功底。 归纳法。先考虑如何构造小的情况,再通过小的情况构造大的情况。 考虑特殊情况。比如要求构造一个特定的图,那么可以自己添加条件限制范围,比如特定的二分图、特定的树、特定的链等等。一个常见的条件就是对称性。构造具有数学美的答案! C
阅读全文
摘要:Arc123 D 很好考场降智了。 感觉$D$比$C$好做多了。 考虑$C_i = A_i - B_i$,那么有$C_{i + 1} \leq C_i,B_i \leq B_{i + 1},A_{i + 1} - B_{i + 1} \leq A_i - B_i \to B_i + max(0,A_
阅读全文
摘要:[USACO17FEB]Why Did the Cow Cross the Road III P 考虑我们对每种颜色记录这样一个信息 \((x,y,z)\),即左边出现的位置,右边出现的位置,该颜色。 于是统计的是$x < x_2,y > y_2,|z - z2| > k$的数对数量。 因为$CDQ
阅读全文
摘要:CF1111D Destroy the Colony 考虑到排列数只和颜色有关。 那么根据多重集排列公式: \(ans = \frac{n!}{r1!r2!....rn!}\) 设$m = \frac{n}{2}\(,我们知道一种拼凑方式的排列答案为\)\frac{m!}{(a1!....an!)}
阅读全文
摘要:A 按题意模拟。 scanf("%lld%lld%lld%lld",&n,&a,&x,&y); std::cout<<n * x - (x - y) * std::max(n - a,0ll); B 判断第一个 \(1\) 的位置的奇偶性。 scanf("%lld",&n); scanf("%s",
阅读全文
摘要:[HAOI2011]problem a 思考一下:转化条件则一个人在 $[a + 1,n - b]$排名中,且这些人分数都一样。 那么就是若干个区间选择不交集合的问题。 // Problem: P2519 [HAOI2011]problem a // Contest: Luogu // URL: h
阅读全文
摘要:我们先考虑一下拿部分分: subtask1 考虑因为 \(n < 2k\) ,那么我们的划分一定是从中间某个地方裁开,且满足 \(k\) 的条件的,我们发现当划分点在 $[n\ mod\ k,k]$时满足条件,那么我们只需要维护一个前缀最大值和后缀最大值就好了。 for(int i = 1;i <=
阅读全文
摘要:期望入门题。但是我不会做。 考虑设$E_{x\to{x+1}}$为$x$到$x+1$点的期望步数。 则$ans = \sum_^ E_{x\to{x+1}}$ 知$E_{y\to{x+1}} = \sum_^E_{i\to{i + 1}}$ \(E_{x\to{x+1}} = \frac{1}{so
阅读全文
摘要:关于异或运算和代数和运算有很不错的性质: \(xor_{i = 1} ^ {n}a_i \leq \sum_{i = 1} ^ n a_i\) 所以我们考虑一段区间按题目来说是合法的,即 \(xor_{i = 1} ^ {n}a_i = \sum_{i = 1} ^ n a_i\) 是满足一段不符合
阅读全文
摘要:发现选定一个长度后,怎么翻转是固定的。 那我们直接选定一个长度去操作就行。 优化操作过程 类似于堆里打持久化标记一样的感觉。 [USACO07MAR]Face The Right Way G // Problem: P2882 [USACO07MAR]Face The Right Way G //
阅读全文
摘要:这种具有明显规划的最优化问题,肯定是$dp$。 考虑$f_{i,j}$在$i$天,$j$张股票的最优收益。 那么方程呼之预出,值得一提,这玩意要用单调队列优化。 代码不挂了。算是第一次见到二维的单调队列的题。
阅读全文
摘要:码农题啊兄弟们。 随便考虑二分一下,然后发现要取一条满足性质的边。 被所有大于$mid$的路径都覆盖,取了之后能把他们都弄到小于$mid$ 那就树上差分再处理一下。 写了$180h$,老年人复建训练。 NOIP2015 提高组] 运输计划 // Problem: P2680 [NOIP2015 提高
阅读全文
摘要:从$whk$回来了。 考虑我们需要维护一个子集的信息。 对于二进制的子集信息维护有一个很经典的操作: 高维前缀和。 AT4168 [ARC100C] Or Plus Max // Problem: AT4168 [ARC100C] Or Plus Max // Contest: Luogu // U
阅读全文
摘要:先写一下自己想到的部分: 考虑枚举一个根。 计算一个点对出现的概率。 对于我这种期望概率基本不会的人,差点就把这题切了。 自己想到的部分都没有假。 问题在于: 如何计算一个点对出现的概率。 考虑和这两个点的$LCA$是有关系的,我们考虑把这两点到$LCA$的链拉出来。 如果有一次操作涉及了这两条链的
阅读全文
摘要:这玩意为啥是紫。 考虑对每个小于$x$的数值设为1,大于$x$的数值设为-1. 那么对于答案要求的就是绝对值最大的连续段。 线段树是很显然的。 考虑我们不能对每个数都进行一遍重构,这样就退化到了$O(n^2log)$ 我们对每个数的权值排序,那么更改操作变成了$O(nlog)$ 然后我们用线段树维护
阅读全文

浙公网安备 33010602011771号