【b704 && BZOJ 1999】树网的核】的更多相关文章

[题目链接]:http://noi.qz5z.com/viewtask.asp?id=b704 &&http://www.lydsy.com/JudgeOnline/problem.php?id=1999 [题意] 给你一棵树; 让你找出所有的直径; 并在这些直径上面选取连续的一段; 使得它的偏心距最小; [题解] 这题有个思维量比较大的点就是; 多条直径,只要选取任意一条就好; 网上找到了很多分析; 感觉这个说得比较清楚吧; /* 证明:首先,如图,如果ABCD和FBCE都是直径的话,则…
题面 解题思路 搞了三个多小时.... noip时的数据很水,直接暴力n^3过. 我们考虑优化,首先可以贪心,我们要在直径上选肯定越插长越好,所以n^2其实就可以解决.但这还不够,根据直径的最长性,我们可以用一个单调队列优化. 代码 #include<iostream> #include<cstdio> #include<cstring> #include<cmath> #include<algorithm> using namespace st…
洛谷传送门,BZOJ传送门 树网的核 Description 设T=(V, E, W) 是一个无圈且连通的无向图(也称为无根树),每条边带有正整数的权,我们称T为树网(treenetwork),其中V, E分别表示结点与边的集合,W表示各边长度的集合,并设T有n个结点. 路径:树网中任何两结点a,b都存在唯一的一条简单路径,用d(a,b)表示以a,b为端点的路径的长度,它是该路径上各边长度之和.我们称d(a,b)为a,b两结点间的距离. 一点v到一条路径P的距离为该点与P上的最近的结点的距离:…
围观了final,SJTU还是飞了,泽民同志劲啊! 膜拜归膜拜...回来开题 bzoj1999树网的核 最近就喜欢给自己找切不动的题...QAQ ok.....昨天在家里做了一个下午+晚上 又困&又累,虽然的确是调出了一些bug但是最sb的一句话今天才刚刚调出来...晕啊 finding my 状态ing... 联赛数据n=300,现在想想真是厚道,vijos也很厚道,一个完全通不过的程序居然还A了... Demi Guo说过思考三部曲,想法是什么,想法怎么来的,我为什么想不到. (证明一)核一…
[BZOJ1999][codevs1167][Noip2007]Core树网的核 试题描述 设T=(V, E, W) 是一个无圈且连通的无向图(也称为无根树),每条边带有正整数的权,我们称T为树网(treenetwork),其中V, E分别表示结点与边的集合,W表示各边长度的集合,并设T有n个结点. 路径:树网中任何两结点a,b都存在唯一的一条简单路径,用d(a,b)表示以a,b为端点的路径的长度,它是该路径上各边长度之和.我们称d(a,b)为a,b两结点间的距离. 一点v到一条路径P的距离为该…
从下午坑到网上..noip的数据太弱,若干的地方写挂结果还随便过= = 最坑的就是网上有些题解没考虑周全... 第一步是找直径,用两次bfs(或者dfs,Linux下系统栈挺大的..)解决.找出其中一条直径就可以了,虽然蒟蒻不会证明但是看起来似乎挺有道理的 要看证明的话可以看这个题解:http://trinklee.blog.163.com/blog/static/238158060201411175015709/ 直径上的路径本来有n^2条,但是我们发现,首先对于同一起点/终点的路径,路径长度…
一道树的直径 树网的核 BZOJ原题链接 树网的核 洛谷原题链接 消防 BZOJ原题链接 消防 洛谷原题链接 一份代码四倍经验,爽 显然要先随便找一条直径,然后直接枚举核的两个端点,对每一次枚举的核遍历核上的每个点,用\(dfs\)求出核外节点到核的最大值即可,时间复杂度为\(O(n^3)\),这在\(NOIP\)的原数据范围下是可以过的,但对于数据加强版就必须要优化了. 发现当枚举到直径上的某个点时,核的另一端在不超过\(s\)的前提下显然越远越好.这样就直接优化掉一个\(n\)了,但我们还可…
P1099 树网的核 (bzoj数据加强) 前置知识:树的直径 (并不想贴我的智障写法虽然快1倍但内存占用极大甚至在bzoj上MLE) 正常写法之一:用常规方法找到树的直径,在直径上用尺取法找一遍,再dfs,再全图找一遍. 分类讨论: 1.偏心距可能是所取路径上(非端点)的某一点与直径外一点的距离 解决方案:在该点上跑一遍dfs,不能通过树的直径,找到距离最远的点. 2.偏心距可能是所取路径的端点与直径端点之间未取部分的长度. 所取路径的端点在直径上,根据性质,与它相对距离最远的点十分显然是直径…
1999: [Noip2007]Core树网的核 Time Limit: 10 Sec  Memory Limit: 64 MBSubmit: 1214  Solved: 336[Submit][Status][Discuss] Description 设T=(V, E, W) 是一个无圈且连通的无向图(也称为无根树),每条边带有正整数的权,我们称T为树网(treenetwork),其中V, E分别表示结点与边的集合,W表示各边长度的集合,并设T有n个结点. 路径:树网中任何两结点a,b都存在唯…
链接https://www.luogu.org/problemnew/show/P1099 题目描述 设T=(V,E,W)是一个无圈且连通的无向图(也称为无根树),每条边到有正整数的权,我们称TTT为树网(treebetwork),其中V,E分别表示结点与边的集合,W表示各边长度的集合,并设T有n个结点. 路径:树网中任何两结点a,b都存在唯一的一条简单路径,用d(a,b)表示以a,b为端点的路径的长度,它是该路径上各边长度之和.我们称d(a,b)为a,ba两结点间的距离. D(v,P)=min…