链接:

http://acm.hust.edu.cn/vjudge/contest/view.action?cid=88230#problem/C

求树的直径,这里只不过给每条边增加一个边长属性,变成了求树上两点距离最远为多少

树的直径,在今天比赛前我是没有接触过的, 队友说在学长的博客上看是用了两个bfs就可以了,可我看的题解是用了两个dfs

应该意思是一样的吧!!! 都学习一下

题解的代码:

#include <cstdio>
#include <cstring>
#include <iostream>
#include <algorithm>
#include <cstdlib>
using namespace std; #define N 30005 struct node
{
int v, next, w;
}edge[N<<]; int Head[N], dis[N];
int cnt, Max, Index; void Add(int u, int v, int w)
{
edge[cnt].v = v;
edge[cnt].w = w;
edge[cnt].next = Head[u];
Head[u] = cnt++;
} void dfs(int u, int w)
{
dis[u] = w; if(dis[u] > Max)
{
Max = dis[u];
Index = u;
} for(int i=Head[u]; i!=-; i=edge[i].next)
{
int v = edge[i].v; if(dis[v] == -)
dfs(v, dis[u]+edge[i].w);
}
} int main()
{
int t, n, iCase=; scanf("%d", &t);
while(t--)
{
scanf("%d", &n);
memset(Head, -, sizeof(Head));
cnt = Max = ; for(int i=; i<n; i++)
{
int u, v, w;
scanf("%d%d%d", &u, &v, &w);
Add(u, v, w);
Add(v, u, w);
} memset(dis, -, sizeof(dis));
dfs(, ); memset(dis, -, sizeof(dis));
dfs(Index, );
printf("Case %d: %d\n", iCase++, Max);
}
return ;
}

最新文章

  1. Http 状态码对照表
  2. C++获取鼠标位置及全局检测鼠标行为
  3. 洛谷P1121 环状最大两段子段和
  4. Spring的java.lang.IndexOutOfBoundsException: Remember that ordinal parameters are 1-based!异常处理方法
  5. dedecms网站如何做在线订单功能
  6. (二)windows下安装PHPCMS V9
  7. Java程序员面试题集(1-50)(转)
  8. paip.vs2010 或.net 4.0安装出错解决大法.
  9. OSG坐标系统
  10. 设置韩澳大利亚sinox弄winxp清除字体和界面美观
  11. Git学习之路(4)- 撤销操作、删除文件和恢复文件
  12. c# networkcomms 3.0实现模拟登陆总结
  13. maven 编译出错Fatal error compiling: 无效的目标发行版: 1.8 -&gt; [Help 1] 解决办法
  14. memcached 配置
  15. THINKPHP5 volist标签循环不能设置循环变量为$i
  16. Hdu1896 Stones(优先队列) 2017-01-17 13:07 40人阅读 评论(0) 收藏
  17. native生成策略:由Hibernate根据所使用的数据库支持能力从identity、sequence或者等生成策略中选择一种
  18. Ajax保留浏览器历史的两种解决方案(Hash&amp;Pjax)
  19. 20155315 2016-2017-2 《Java程序设计》第四周学习总结
  20. vim多行注释与取消

热门文章

  1. mysql启动报错 The server quit without updating PID file
  2. Openning SharePoint - 80 website gives HTTP 404 Error, The webpage cannot be found ! on SharePoint 2013
  3. Consul Session
  4. Hadoop 集群的一些问题
  5. Hadoop 初始化系统
  6. jQuery源码解读三选择器
  7. java内存模型:简单理解
  8. 3sum, 3sum closest
  9. php下ajax的文件切割上传
  10. 基于Jenkins的持续集成CI