- 博客(3)
- 收藏
- 关注
原创 2020牛客多校第十场J Identical Trees题解
题目传送门 读完题目后,一个非常简单直观的想法就是把每一颗子树中的标记都对应的比较一遍,寻找拥有最多的相同标记的子树,然后逐层向上合并到根节点,最终答案便是树上的总结点数减去相同标记数。 由此可以想到用dp来表示这一状态。设 dp[u1][u2] 表示T1中以u1为根的子树与T2中以u2为根的子树内相同标记的最大数量。那么对于两颗树内的结点而言共有两种情况: 1、u1、u2是叶子结点,那么只需要判断u1和u2的标记是否相同即可 2、u1、u2不是叶子结点,那么此时的 dp[u1][u2] 就等于所有以这两个
2020-08-16 20:19:01
187
原创 2020牛客暑期多校训练营(第四场)A题解
话说这题出题人给的题解看了半天看不大懂啊…… 还是抄 看了好多AC代码才搞明白 题目传送门 首先这道题的题面给出了一个easy版本的问题,我们先从这一问题开始。 读完题目后,我们略一思考就可发现,随着x的减少,k是会不断的增加的,这显然是一个单调的函数关系,因此很容易想到二分。在easy版本中k固定的情况下,二分的区间就是1~n,每次check时,我们先找出当前深度最深的点,向上跳x个距离到达某一结点u,将其设为关键点,然后将以u点为根的子树打上标记,表示这颗子树已经被“处理”了。这样每次重复上述过程,直到
2020-07-25 20:59:04
185
原创 算法学习——拓扑排序
图论算法之拓扑排序算法介绍理论代码实现方式相关例题例1 [洛谷P1113杂务](https://www.luogu.com.cn/problem/P1113)例2 [洛谷P1347排序](https://www.luogu.com.cn/problem/P1347) 算法介绍 理论 在生活中,我们常常把一些较大的工程分解成几个子工程逐步完成,而子工程的完成常常有限定的先后顺序,如:先完成工程A,再...
2020-03-23 10:19:57
298
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人