首页 > 其他分享 >5月杂题

5月杂题

时间:2023-05-11 17:14:07浏览次数:32  
标签:偏序 log 个数 不选 即可 杂题 dp

5.7

做了什么:坐飞机,大吃大喝。

P9139 [THUPC 2023 初赛] 喵了个喵 II:

先考虑每个出现两次怎么做,发现只要每对区间不是包含关系即可。

回到此题,相当于要把 4 个数分成两组,有 \(1-2,3-4\) ,\(1-3,2-4\) 两种选法。

2-SAT+主席树优化建图 即可。

5.8

做了什么:模拟赛,发的题,CF。

LOJ6476 「ICPC World Finals 2017」复制,复制,复制并变异 Replicate Replicate Rfplicbte

考虑逆向思考,如何还原到操作前的状态,发现每次找到最后一行中最右的 \(1\) ,设其坐标为 \((x,y)\) ,则在 \((x-1,y-1)\) 放雷,并把周围的 3*3 反转一下。

这样消下去就会剩两行两列,我们发现由之可以直接推出关键点的坐标。

LOJ511

处理字典序的过程是平凡的,问题可以转化成:每个点可选/不选,一些点只能选,一些点只能不选,求独立集个数,对 \(V=10^{18}\) 取 min。并且每次会改变一个点是否能选/不选的状态。

有两种做法,一种是直接传统 ddp。

这种做法非常麻烦,因为还要对每个点的轻儿子建线段树,处理不能除/减。

一种是利用答案和 \(V\) 取 min ,观察到自由点超过 \(2\log(V)\) 时直接输出 \(V\) ,否则暴力 dp。

CF341E

咕。

CF346E

咕。

CF1827D

注意到把 \(j\) 从大往小枚举,\(g\) 会形如 \(O(n)\) 次区间加,然后利用 BIT 维护历史和即可。

5.9

做了什么:改题,做发的题。

CF1798F

一个结论:\(2n-1\) 个数里一定能找出 \(n\) 个,和是 \(n\) 的倍数。

证明:咕。

由此,我们把集合大小从小往大排序,每次直接任取 \(2s-1\) 个剩余的数,做一遍背包构造方案。对于最后一个集合,再补上合适的数。

由此直接 dp 即可。

LOJ3278「JOISC 2020 Day3」收获

发现对于每个人 \(u\),我们都能处理出:如果某个苹果树被 \(u\) 摘了,则下一个摘的人 \(f\) 是谁。由此可以连出一棵基环树。

每个苹果树能用二元组 \((u,t)\) 表示,意思是 \(u\) 第一个摘,是 \(t\) 时刻摘的。

对于树的贡献,相当于算子树内 \(t+d_u-d_f\le T\) 的二元组个数。二维偏序。

对于环的贡献,设 \(dis(u,v)\) 表示 \(u\) 顺着环走到 \(u\) 的时间,则有 \(T-t-dis(u,f)\) 除以 \(L\) 下取整再加 \(1\) 。可以拆成两遍偏序。

gym102412D

首先可以用文艺平衡树维护序列,现在的难点在于合并信息。

发现如果已经有三元上升,就不需要准确维护信息。

通过讨论发现我们需要处理:一个子树中 \(>z\) 的最小数。因为没有三元上升,\(>z\) 的数一定单调递减,所以直接二分即可。因为平衡树树高 \(O(\log n)\) ,复杂度即为 \(O(n\log^2 n)\) 。

gym102391E

处理最小直径,二分答案。可以对仙人掌建出圆方树。设 \(d_u\) 是使 \(u\) 子树合法的前提下,\(u\) 到最深叶子的距离最小值。dp 一下就好了。实现比较复杂:

就是我们断开的地方,左右分别维护三个信息: \(s,m_1,m_2\) 其中 \(m_1\) 是当前 \(u\) 到当前最深叶子的距离,\(m_2\) 是当前点 \(v\) 到其他点的最远距离, \(s\) 是 \(u\) 到 \(v\) 的距离。

5.10

做了什么:去 jzhx,听线性代数,模拟赛。

CTT2019 D3T2

如果不是环是链,则操作等同于:求出前缀和数组 \(s\) ,交换 \(s\) 的相邻两项。就是求逆序对个数。

现在是环了,我们把原序列无限复制,并设定一个“零势能面”,类似的定义 \(s\) 。设原序列所有数的和是 \(A\) ,则 \(s_{i+n}=s_{i}+A\) 。我们把 \(s_{i},s_{i+n},s_{i+2n}...\) 看成一个系统,则操作等同于交换一对相邻系统的位置。对于两个系统,如果相对应的一对位置有 \(a>b\) ,\(a\) 在 \(b\) 前,则我们需要操作 \(b-a\) 除以 \(A\) 上取整次。拆成两遍二维偏序来算就好了。

5.11

做了什么:去玄武湖玩,做发的题。

CSES2418

咕咕咕。

gym100254F

咕咕咕。

CSES2427

咕咕咕。

标签:偏序,log,个数,不选,即可,杂题,dp
From: https://www.cnblogs.com/cwhfy/p/17391630.html

相关文章

  • 几道好欺负的杂题
    P7325[WC2021]斐波那契会同余+set可以解决改题。CF1264D1BeautifulBracketSequence(easyversion)性质题,找到性质后就不会很难了CF1264D2BeautifulBracketSequence(hardversion)上一道题的强化版,如果你会范德蒙德卷积就很简单了,否则需要考虑组合意义来优化dp......
  • cf 数据结构杂题
    rand一些题目做一下,持续更新平衡树gym101261APersistentDequeYouneedtoprocessthefollowingqueries:Bvx—Addxtothebeginningofthedequewithversionv.Evx—Addxtotheendofthedequewithversionv.<v—Removethefirstelemen......
  • 杂题记录
    2023.4.27下午LZY讲题ICPC2022Shenyang-G题意给定\(n\)个点的两颗树\(T_1,T_2\)。\(m\)次询问\((a,b)\),求\(\max\limits_x\{d_1(a,x)+d_2(x,b)\}\)。\(n\leq10^5,q\leq5\times10^5\)。提交地址https://codeforces.com/gym/104160/problem/G。分析考虑若给定......
  • 4月CWOI杂题
    tips:为了避免一不留神题目就被邪恶的o老师隐藏,题面文件在cnblogs上有备份。C0216【0407C组】模拟测试这场比赛四道题代码加起来长度不超过1500个字符,赢!(223+399+330+541=1493)A【1231C组】数组计数定义\(f_{i,j}\)表示前\(i\)个数,和为\(j\)的方案数,前缀和优化转......
  • 4月CF杂题
    CodeforcesRound862(Div.2)E.ThereShouldBeaLotofMaximums题意:定义一棵点有颜色的树的\(\text{MAD}\)为树上编号最大的出现了至少两次的颜色。对于树上每条边,求出断开它后生成的两棵树的\(\text{MAD}\)的最大值。\(n\le2\times10^5,a_i\le10^9\)。先找到整棵树......
  • 4月AT杂题
    AtCoderBeginnerContest296D-M<=ab题意:求最小的正整数,不小于\(m\),且能被表示为两个不大于\(n\)的正整数的数,不存在输出-1。\(n,m\le10^{12}\)。直接枚举\(a\),计算最小的满足\(ab\gem\)的\(b\),如果\(a>b\)则后面的情况一定是重复的。时间复杂度\(\text{O}(\sqr......
  • 4月杂题
    距离NOI2023还有109天,不能再沉溺于省选的成功了。开始更新博客!4月重点在whk上,不会更很多,为了调和whk的。1.[NOI2023联合省选]填数游戏考虑对于第\(i\)个数,把\(T_i\)中的两个数连边,特别地,只有一个数连自环。此时每个连通块只能是树/基环树。基环树是好做的,因......
  • 【杂题乱写】ARC108
    AtCoderRegularContest108ASumandProduct\(O(\sqrt{n})\)枚举约数判断即可。BAbbreviateFox用栈维护,每次判断栈顶是不是fox,是则弹出。CKeepGraphConnect......
  • 杂题乱做4
    P8499首先,显然需要树哈希。哈希方法见OIwiki。设\(f_i\)表示\(i\)子树的哈希值,那么我们如何判断\(G\)能否通过删去不超过\(k\)个点变成\(H\)?考虑\(solve(i,j......
  • 【杂题乱写】ARC107
    AtCoderRegularContest107ASimpleMath把\(a,b,c\)提出即可。BQuadruple改成\(a+b=k+c+d\),显然可以枚举\(c+d\)的值从而得到\(a+b\)的值,在此基础上求出每......