[CSP2019] 树的重心 题意 \(T\) 组数据 \((1 \le T \le 5)\), 每次给定一棵 \(n\) 个点的树 \((1 \le n \le 299995)\). 设 \(E\) 为树的边集, \(V'_x,\ V'_y\) 分别为删去边 \((x,y)\) 后 点 ...
本题当然可以通过大力讨论每棵子树的size的大小关系,然后用各种数据结构暴力维护。但是我更倾向于用一种更为性质的做法。 首先讲一下我在考场上想到的做法 没写 。就是考虑换根,在换根的过程中计算每一条边删去后得到的两棵子树的重心, 由于重心的一些性质,如果我们把以点v的所有儿子为根的子树的重心求了出来,那么我们要求以点v为根的子树的重心时,可以保证重心一定在v的重儿子子树的重心到v的链上,那么我们就 ...
2019-11-20 11:37 0 355 推荐指数:
[CSP2019] 树的重心 题意 \(T\) 组数据 \((1 \le T \le 5)\), 每次给定一棵 \(n\) 个点的树 \((1 \le n \le 299995)\). 设 \(E\) 为树的边集, \(V'_x,\ V'_y\) 分别为删去边 \((x,y)\) 后 点 ...
按照CSP题目顺序来写 格雷码 不难发现答案可以递归找到,然后每一次做即可. 代码 括号树 简单题,直接在树上搞一个栈然后回溯即可. 括号树nmsl 代码 树上的数 咕咕咕 Emiya 家今天的饭 很显然可以看出这题可以容斥,然后就可以写一个\(O(mn^3)\)的\(dp ...
CSP2019 题解 D1T1 格雷码(code) 题目传送门 https://loj.ac/problem/3208 题解 按照题意模拟就可以了。 对于第 \(i\) 位,如果 \(k \geq 2^i\) 那么这一位就是 \(1\),然后把 \(k\) 变成 \(2^{i ...
D1T1 code 签到题,大家都会。 可以从高位往低位确定,如果遇到 \(1\),则将排名取反一下。 注意要开 unsigned long long。 D1T2 brackets 简单 ...
题面 这是一道典型的部分分启发正解的题。 所以我们先来看两个部分分。 Part 1 菊花图 这应该是除了暴力以外最好想的一档部分分了。 如上图(节点上的数字已省略),如果我们依次删去边(2) ...
day ? 初赛好像还挺简单的,没考太多要背的题,错了一个编译器的用处和并查集的 siz 的值域(不仔细检查的后果),发现 ZJ 一堆 ak 初赛的... (初赛改成全选择题后果然变简单了)? ...
CSP2019游记 Day -inf 因为初赛比去年好多了,很稳的进入了初赛(虽然 sb 错了两个)。 Day -5~-1 疯狂颓废,期中考试爆炸以后调整了一下心态,做了做学校的模拟赛增加了一些信心。 Day 0 早上看恋爱番,下午动车上看了很长时间的 FZ,晚上玩完《纯白 ...
先开坑,等成绩出来再填吧。 洛谷自测458(100+100+10+84+64+100),虽说1分也没少,d2t3甚至还比我想象的跑得更快,但还是该感叹自己有些老了,一些从前能想到的东西,现在想不到了 ...