首页 > 代码库 > 0712
0712
昨天的题目有点奇怪,我就不写了...
今天的题目更奇怪,但是还是比较显然的。
第一题:给你一个无向图的最小割矩阵,然后让你还原这个图。
最小割最多n-1个,由某些显然的性质可知,最终的图是一个树。
然后尝试构造这棵树,怎么构造?
我先找到当前点集中最小的权值,然后依据这个值将点集划分成两块,分治,最后随意连条边即可。
check了一下,发现做法没问题。
正解是找到最大的边,如果这两个点未联通,连起来,否则根据情况判。可以理解为最大生成树。
只有80,我忘了判无解。
第二题:要求你在树上找到一个大小为K联通块,要求联通块的边的长度和*2-链的长度最小。
DP,我先YY了一个DP,设f[i][j]表示i为根的子树有j个点的最小联通块长度。g[i][j]表示i为直径的一端的最小长度。我发现我需要知道哪些点在最优答案中。
然后就有YY了一个做法是每隔K距离就以此点为根做DP,我发现成功率比较低...。因为要检查的点必须恰好是最优解直径的一端。
为了增强单次DP的效果,我又YY了一个Z[i][j]表示i节点是两直径端点LCA的状态,再纪录tt[i]表示以i为根的子树的答案。
最后的结果是我发现这个DP好像直接就能做了.....
死于转移写挂。还是只有80。
第三题:
神奇的hash,但我再也不想见到回文这两个字了....
0712
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。