博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
(并查集+树形DP) hdu 4514
阅读量:4605 次
发布时间:2019-06-09

本文共 1246 字,大约阅读时间需要 4 分钟。

湫湫系列故事——设计风景线

Time Limit: 6000/3000 MS (Java/Others)    Memory Limit: 65535/32768 K (Java/Others)

Total Submission(s): 3269    Accepted Submission(s): 587

Problem Description
  随着杭州西湖的知名度的进一步提升,园林规划专家湫湫希望设计出一条新的经典观光线路,根据老板马小腾的指示,新的风景线最好能建成环形,如果没有条件建成环形,那就建的越长越好。
  现在已经勘探确定了n个位置可以用来建设,在它们之间也勘探确定了m条可以设计的路线以及他们的长度。请问是否能够建成环形的风景线?如果不能,风景线最长能够达到多少?
  其中,可以兴建的路线均是双向的,他们之间的长度均大于0。
 

 

Input
  测试数据有多组,每组测试数据的第一行有两个数字n, m,其含义参见题目描述;
  接下去m行,每行3个数字u v w,分别代表这条线路的起点,终点和长度。
  
[Technical Specification]
  1. n<=100000 
  2. m <= 1000000
  3. 1<= u, v <= n 
  4. w <= 1000
 

 

Output
  对于每组测试数据,如果能够建成环形(并不需要连接上去全部的风景点),那么输出YES,否则输出最长的长度,每组数据输出一行。
 

 

Sample Input
3 3 1 2 1 2 3 1 3 1 1
 

 

Sample Output
YES
 

 

Source
 

 

DP求树上最长链

#pragma comment(linker, "/STACK:1024000000,1024000000")#include
#include
#include
#include
#include
#include
#include
#include
using namespace std;struct node{ int v,w; node(int _v, int _w) : v(_v), w(_w) {}};vector
e[100001];int n,m,fa[100001],dp[100001],ans;int find(int x){ if(x!=fa[x]) fa[x]=find(fa[x]); return fa[x];}void dfs(int u,int father){ int maxx=0; for(int i=0;i

  

转载于:https://www.cnblogs.com/water-full/p/4493765.html

你可能感兴趣的文章
Elasticserach 配置文件详解
查看>>
【案例】大型摩托制造企业如何高效排产?看APS系统如何帮忙
查看>>
NTCIR-13 We Want Web 任务概述
查看>>
模版include的用法
查看>>
LotusScript_导出数据库路径和名称
查看>>
String ,StringBuffer 与S tringBuilder的区别??
查看>>
PgSQL · 追根究底 · WAL日志空间的意外增长
查看>>
struts2笔记之struts:property标签
查看>>
Threejs.教程
查看>>
超闩锁和子闩锁如何工作的
查看>>
ZendStudio快捷键
查看>>
[ovs] ovs开启日志debug
查看>>
Eclipse插件项目中读取文件
查看>>
jquery定义链接跳转的高亮显示
查看>>
CheckListBox怎样得到多选值?
查看>>
2370 小机房的树
查看>>
三道题(关于虚表指针位置/合成64位ID/利用栈实现四则运算)
查看>>
Vijos P1243 生产产品 (单调队列优化DP)
查看>>
mysql 数据表操作 目录
查看>>
iOS常用第三方库 -转
查看>>