7.28-7.31 总结

一.比赛总结

  1. 打了一场模拟赛。签到题读错题了,乐,眼睁睁看着一车人过。还有一个题直接猜错结论,以后要提防。

  2. 打了一场多校,写了4个题。但是不会差分约束题,shame,一眼鉴定为PJ水平。

  3. 打了ARC,构造抓瞎,菜死了。

  4. 今晚 CF 准备好丢脸了。

二.题目总结

感觉写详细题解太累了。每个题点到就好。

CF1458F Range Diameter Sum:
  1. 这个树上圆理论很厉害啊。

  2. 处理一个序列所有区间,可以尝试分治,转换成处理跨越 \(mid\) 的,使问题得到简化。这是常见的思想。

  3. 点分树真好用。

P3346 [ZJOI2015]诸神眷顾的幻想乡
  1. 广义SAM真是个神奇的东西。

  2. 注意一个结论:树上每个路径,都可以在某叶子结点做根的情况下,变成直上直下。

CF1214G Feeling Good

\(n\le 2000,m\le 2000,q\le 5*10^5\)

这个题详细说说。可以转换成 \(n\) 个集合,找到没有包含关系的一对集合。集合还带修。

可以 bitset 维护集合。

直接暴力的话, \(O(n^2mq/w)\) 过不去。

一个结论是,我们把集合大小排序,然后判是否有一对相邻的能满足。

证明就是反证,分类讨论。

\(O(nmq/w)\) 还是过不去。

但是我们可以用 set 来维护这个“集合大小排序”,修改相当于删除和插入。

我们再用一个 set 记录这个答案集合。于是乎就可以做到每次只处理 \(O(1)\) 个点对。

\(O(mq/w+(n+q)\log n)\)

CF1085G Beautiful Matrix
  1. 我愿把这个计数部分叫做Ex-错排?但是很好数啊。

  2. 处理字典序这种东西,我们永远可以用枚举 \(lcp\) 的方法解决。

  3. 不清楚为啥能 2900。

AT4376 [AGC027B] Garbage Collector

不要被诈骗了。随便想一个结论迷糊自己是不行的。

UOJ372 滑稽树前做游戏

一句话题意:给你一个无向简单图。\(x_i\)\([0,1]\) 均匀分布。f(x)=\max(x_i,x_{u_j}+x_{v_j})),求 \(E(x)\)

\(n\le 25\)

神题。看完题解有一种“朝闻道,夕死可矣”的感觉。

这种什么 \([0,1]\) 均匀分布一般都是在解方程。

看到一堆数的 \(max\) ,想到把它转换成小于等于。看到期望,我们把它转化成一堆概率叠起来。

\(g(t)=P[f(x)\le t]\) ,答案就是 \(2-\int_{0}^{2}g(t)\,dt\)

于是想办法求 \(g\) 。我们想办法先填一些数,来减少限制。

不妨枚举 \(x_i\) 最大的 \(i\) 。有两种情况:

  1. \(x_i\le t/2\) ,则一定抵不到 \(t\) 。出现这种情况的概率是 \((t/2)^n\)

  2. \(x_i > t/2\) ,考虑 \(i\) 相连的 \(j\) ,发现与 \(j\) 相连的其他边都没有用了。

于是我们可以把 \(i\)\(j\) 们删去,形成一个子问题。但是我们注意到此时所有点要 \(\le x_i\) ,这就多了一个限制。

所以我们引入新的参数 \(w\): 求一个关于 \(w\)\(t\) 的多项式 \(h(G,w,t)\) 表示 \(G\) 这个图,\(x_i\)\([0,w]\) 间分布,\(t\) 还是原意。

就可以得到这样一个式子:\(h(G,w,t)=(t/2)^n+\sum \int_{t/2}^{w} (t-x)^k h(G_i,x,t) dx\) ,其中 \(G_i\) 表示把 \(i\) 和与 \(i\) 相连的点删去后的图,\(k\) 表示 \(i\) 的度数。

归纳发现 \(h(G,w,t)\) 是个齐次多项式,所以是很好维护的。

直接对着式子算就好了。复杂度是 \(O(2^n n^3)\) 的,感觉过不去。

但第一,可以记忆化搜索;第二,一个不连通的图,可以先求每个联通块,再直接乘起来。

某道题
  1. 铭记线段树分治。

  2. 特殊的边,特殊处理

gym 102331 H

一个见到两次,咕了一年的题。

一句话题意是给定一个序列,每次询问给出 \(l,r,k\) ,求 \([l,r]\) 内取 \(k\) 个不相交的子段,最大的权值和。

  1. 观察到答案关于 \(k\) 是上凸的。因为可以转换成费用流。

  2. 尝试线段树维护。对于每个节点,求 \(g[k,0/1,0/1]\) 表示取了 \(k\) 段,两端是否取了。因为是凸的,可以闵可夫斯基和。

  3. 但是我们询问的时候没法直接合并这些凸包。

  4. 处理凸的问题,别忘了能 wqs 二分。把 \([l,r]\) 拆成 \(O(\log n)\) 段后,对于每段在凸包上二分查出最大处。

于是总共是 \(O(q\log^3 n)\) 的。没太懂怎么减掉一个 log 。

三.感悟

  1. 感觉文学的熏陶对 OI 的学习是有帮助的,今天只是做了会儿语文作业,搞 OI 的时候效率就巨高。

  2. 自大是我最大的敌人。要明白自己今年省选纯粹运气好,现在真实实力应该是SC 40名开外,CW 10名开外。不要被蒙蔽了双眼。

  3. 我好懒啊。单指硬抗B-X很难受,明白要练双指了。

  4. 仍然上不了IM呢,我个废物。距离上M已经过了一年了。不会博弈论,不会构造,啥也不会。纯纯一头猪。

posted @ 2022-07-31 22:04  grass8woc  阅读(116)  评论(1编辑  收藏  举报