CF / AT 泛做。

感觉要提升速度。

*2700 CF1207G

我测,什么情况。

考虑把所有询问串挂在 ACAM 上面,然后去进行 data structure。

我们其实可以考虑建出关于 si 的一颗依赖关系的树,然后动态加边,加边,然后并查集查询 (bushi)

我们知道了被挂在了 u 节点上的若干的询问,相当于求某个询问在 u 节点皮胚的次数,然后我们知道这相当于是 ACAM 的子树和问题,我们可以拿颗树状数组就可以了。

*2700 就这??????????????????????

*2700 CF961F

很难的啦。

考虑 borderiborderi+1+2.

因为本来就只加入了一对字符,所以来说 borderδ 为 2.

所以可以模拟。

AT_dp_z Frog 3

纯真题目。

ABC221H

被薄纱了!!!!

可以考虑分拆数,然后注意容斥掉 jm+1 的情况。

要复习学习分拆数了。

*2100 CF1788E

这个上得了 *2100 吗,不是可以随便数据结构?

ARC101E

考虑容斥 S=(1)|E|F(E)

E 表示没有被染色的边。

g(2x)=(2x1)

这是任意染色的方案,容易发现,为偶数没有方案。

用 底p 的方式来方便转移。

fi,s 表示 i 处在的连通块大小为 s

考虑用 dp 带上容斥系数来做这个题。

考虑到有两种情况,一种是合并连通块 : 那就是直接多项式乘法, f(u,j)=f(v,k)f(u,jk)

还有一种是删掉一条边,这个就是断掉的,这个直接加上 g(j)f(v,j)

因为这相当于连通块少了内部的一条边,所以系数是 -1.

总之这题要注意细节,值得回味。

CF459E

刷水题是吧,排序取消后效性。直接转移。

CF734E

考虑缩点。然后得到一张黑白交替的图。

我们发现,取出来树的直径,在一直点中点就可以按照层次来变色。

CF955C

春测题喔!

感觉是简单的,考虑所有 p3 的塞进去 vector, p=2 特判,然后二分一下。

CF280C

考虑线性期望和。 E(G)=E(v).

一个点 u 会被选到的概率是 1depu

而删除花费的是 1, 那么就有 E(u)=1depu.

CF19D

考虑树套树, 要这样写!!!!我测你的马。

*st[pos].upper_bound(y)

CF1806E

考虑拼起来若干条 lenin 的链,然后根号分治。

AT_dp_w

考虑将 dp 数组拍到线段树上面。

状态 fi,j 是最后一个 1 的位置在 j.

然后考虑把 r 位置的 (l,r) 的贡献直接加到线段树上。

CF940F

带修莫队。可以思考一下那个 mex 的结论,这几天薄纱简单题真的好爽!!

CF319C

简单题,注意离散化的使用。

*2500 CF958C3

很难的啦。考虑简单 dp.

fi,j 表示正常的划分段 dp,然而这题变成了 n2k 的做法了。

考虑到 fi,jsimodp

那么考虑到 fk,j1+δfk,j1+δ 这两者的关系。

fk,j1+δfk,j1+δmodp

考虑到 δ 均小于 p, 是不是可以思考一下?

然后我们如果有 fk,j1<fk,j1。我们是不是发现 :

fk,j1+δ<fk,j1+δ

那么如何证明呢?

考虑:fi,jfk,j1+δ 以及 δ<p 这性质,我们显然是要让 fk,j1 补上 δ 达到和 fi,j 同余的效果,那么我们果断选择更小的 fk,j1 那无论怎么样都是不优秀的,这样可以考虑分解成 k×p+r 诸如此类形式,那么我们果断直接选 fk,j1 最小就行。

O(nk)

*2400 Team Work

口胡。

考虑《组合数学引论》的方法,递归求导。

我们知道 :

i(ni)=n2n1

然后考虑扩展结论。

(1+x)n=(ni)xix=1 的情况下求导可以得到原式。

那么通过人类智慧可以得到 :

ai×ni_×2ni

这个实际上是通过对于求导的拟合系数来计算的。通过对于求导的观察,不难发现 :

aiai1+i×ai

然后可以直接计算。

但是是没有不观察 ai 的办法吗????显然不是。

我们可以发现只有 2ni 是不与多项式相关的,这个时候可以特判的,那应该干什么????拉格朗日插值, bingo!!

*2600 CF1699E

很难得啦,考虑贺题。

考虑固定最小值 p, 然后去求最小的最大值。先去重。

然后开始人类智慧了,既然我们枚举了最小值 p, 那么我们显然是想要将一个数分解为 p 的最小值对不对?这个时候我们可以考虑倒序转移,那么这样最大值也是倒序的,那么怎么求呢?

不妨设其为 fx 那么和 x 相关的是类似质因数分解的操作,而我们更新与 p 有关的,只有任意的 d|p 那么我们就可以考虑枚举 p , 去维护一个 dp 这个是调和级数复杂度,也就是 nlnn

*2300 CF76F

很有趣的一个问题,算是一类 trick。

考虑到我们正常的 cdq 分治都要写巨长的分类讨论,但是类似此类的单元分类讨论是否有简短的解法呢?

考虑固定 ti 这一维,然后有 :

|xixj||titj|×v

讨论符号有(在乱打) :

xiti×vxjtj×v(xi>xj,ti>tj)

xi+ti×vxj+tj×v(xi<xj,ti>tj)

xi+ti×vxj+tj×v(xi>xj,ti<tj)

xiti×vxjtj×v(xi<xj,ti<tj)

我们定义 ai=xi+ti×v, bi=xi+ti×v

然后我们可以考虑固定 ti<tj, 想要转移,那么我们想要 xixj 那么就是满足 aiaj, bibj, xixj,那么就是 aiaj, bibj.

然后我们可以考虑固定 ti>tj, 想要转移,那么我们想要 xixj 那么就是满足 aiaj, bibj, xixj,那么就是 aiaj, bibj.

此时 ai,bi 同号了 qwq, 那么此时,显然我们直接让此类二元组最多,我们就可以二维偏序了。

所以我们直接可以求一个二维偏序,所以可以规避掉正儿八经的分类讨论。

ABC136F

点集内的贡献是 2n1, 那不在点集内呢?

考虑一个点作为坐标轴原点,然后用二维数点来计算包含某个点的矩形的数量。无非就是 1.32.4 象限的组合。

考虑先至少选完 1.3,至少选完 2.4,再减去至少 1.2.3.4 这个是一个很经典的容斥。

然后就是线性对数。

[ABC248G]

LGJ 老题了。

考虑

d|gcd(i,j)φ(d)=gcd(i,j)

然后数若干个森林有多少条路径,这个题目是困难的,我不会,长大以后再学习。

*2700 CF1303G

很难的啦,考虑贺题。

i=1riai

考虑 rt(u,v) 中的位置 p.

i=1piai+ri=p+1rai+i=p+1r(ir)ai

这个第一第三个部分就是可以的,考虑已经插入了 (p,s1) 这个问题,无非就是求 :

(p+l)sv+s1+s3

psv+lsv+s1+s3

但是代码很难写,我的评价是,很难的啦(贺了)。

*2500 Lena and Queries

注意到动态开店李超树由于交换节点的性质,其实是 O(n) 空间的,很神秘。

然后就考虑线段树分治,把操作挂到线段树的节点上,但是我们发现,其实远不如直接树套树好写,一句话,不如原神。

所以是 O(nlogn) 的空间。

CF : #202909002

*2700 CF906D

考虑暴力。总所周知 :

ababmodφ(p)+φ(p)(modp)

考虑到大概是 log2 次会 phii1 直接暴力乘就好了。

CF : #203611703

CF813F

一类 trick.

考虑先求出一部分的最小值,然后再跑 dijkstra 来更新。
这题里面体现的是斜率优化。

然后在 P5304 [GXOI/GZOI2019] 旅行者

无非就是排除掉次短路的情况,但是其实有一个优美的手法。

对于 u 进行二进制分组, 然后建立超级源点跑就行了。

CF455B

trie 上博弈。

考虑计算先手是否有必胜态或者必输态。

讨论 :

1.均可以 :先手可以自己乱搞到最后自己是先手

2.只 win : 那就直接判奇偶

3.只 lose : 显然会寄掉,很难的啦。

4.不胜不败:后手操控游戏,被拿捏啦。

CF859E

ptsd 题。

一眼 ab,填数游戏。

基环树 ×2,树就像填数游戏一样给边定向,有一个点寄了,就这样。

CF1310B

貌似自己参加过这一场。

考虑 dp。我们只关心自己的主队胜负就行了。

fi,x,y 表示 i 号比赛,胜者主队,败者主队。

fi,x,y=flc,x,0+frc,y,0+(x|y)

初始化随便搞搞。

CF1202F

贺题速度吓人。

枚举 k

考虑这样:

akaa(k+1)

bkbb(k+1)

整理一下 :

a+kk+1aak

本质上只是考虑钦定范围,然后对于边界微调。

整除分块即可。

posted @   Cust10  阅读(21)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 一文读懂知识蒸馏
· 终于写完轮子一部分:tcp代理 了,记录一下
点击右上角即可分享
微信分享提示