zoj3659
#include<iostream>
#include<algorithm>
#include<cstring>
#define ll long long
#include<cstdio>
#define MAXN 200005
using namespace std;
int F[MAXN];
int num[MAXN];
ll s[MAXN];
struct Edge{
int a,b,cost;
}e[MAXN];
int cmp(Edge &a,Edge &b){
return a.cost>b.cost;
}
int find(int x){
if(F[x]==-) return x;
return F[x]=find(F[x]);
}
int main(){
int n;
while(scanf("%d",&n)==){
for(int i=;i<=n;i++){
F[i]=-;
num[i]=;
s[i]=;
}
for(int i=;i<n-;i++)
scanf("%d%d%d",&e[i].a,&e[i].b,&e[i].cost);
sort(e,e+n-,cmp); //手动合并
int t1,t2;
for(int i=;i<n-;i++){
t1=find(e[i].a);
t2=find(e[i].b);
if(t1!=t2){
s[t2]=max((ll)s[t1]+(ll)e[i].cost*num[t2],(ll)s[t2]+(ll)e[i].cost*num[t1]);
num[t2]+=num[t1];
F[t1]=t2;
}
}
printf("%lld\n",s[t2]);
}
return ;
}
zoj3659的更多相关文章
- zoj3659(经典并查集)
这种思想很经典. 从最小的边选择,那么可以知道的是,在除去这条边的另外两个联通块,选其中一块中的点做为源点到另一块所得到的费用和. 如果你已经知道了这两个联通块内部选一个点时的最大费用和.那么这题就可 ...
- ZOJ3659 Conquer a New Region 并查集
Conquer a New Region Time Limit: 5 Seconds Memory Limit: 32768 KB The wheel of the history roll ...
- zoj 3659 并检查集合
http://acm.zju.edu.cn/onlinejudge/showProblem.do? problemId=4882 现在在牡丹江,明天regional直播比赛,我会在一个月内退休.求祝福 ...
随机推荐
- 【转载】java abstract class和interface的区别
转载:https://blog.csdn.net/b271737818/article/details/3950245 在Java语言中,abstract class和interface是支持抽象类定 ...
- #6279. 数列分块入门 3(询问区间内小于某个值 xx 的前驱(比其小的最大元素))
题目链接:https://loj.ac/problem/6279 题目大意:中文题目 具体思路:按照上一个题的模板改就行了,但是注意在整块查找的时候的下标问题. AC代码: #include<b ...
- python问题:TypeError: a bytes-like object is required, not 'str'
源程序: import socket target_host = "www.baidu.com" # 127.0.0.1 target_port = 80 # 建立一个socket ...
- ASP.NET - 学习总目录
ASP.NET - 处理页面 ASP.NET - ADO.NET框架 ASP.NET - 创建功能菜单 ASP.NET MVC - 入门 ASP.NET MVC - 模型验证 ASP.NET MVC ...
- ht学习流程
http://www.hightopo.com/blog/461.html数百个 HTML5 例子学习 HT 图形组件 掌握 HT 基础: 1.先入门手册 http://www.hightopo.co ...
- Spring3.2+mybatis3.2+Struts2.3整合
1.Spring3.2不能用于JDK1.8,只能用于JDK1.7.JDK1.8用spring4.0. 2.导入的jar包 3.目录结构: 4.配置Spring 配置数据库信息: <?xml ve ...
- SQL Server - GO
GO GO是批处理的标志,是一条或多条SQL语句的集合,SQL Server将批处理语句编译成一个可执行单元,此单元称为执行计划. GO语句把程序分成一个个代码块,即使一个代码块执行错误,它后面的代码 ...
- 统计分析与R软件-chapter2-2
2.2 数字.字符与向量 2.2.1 向量 1.向量的赋值 x<-c(10.4,5.6,3.1,6.4,21.7) 2.向量的运算 x<-c(-1,0,2);y<-c(3,8,2) ...
- html5离线记事本
离线记事本 这是一个笔记应用,不需要联网,也不需要数据库,可以直接把数据储存在本地.方便易用! ^_^ <!DOCTYPE html> <html> <head> ...
- 2. Spring Boot项目启动原理初探
SpringBoot从宏观上说,就是对spring容器进行了一层包装.它内部的入口是利用 SpringApplication类的static的 run 方法进行启动的,调用的图: 上图中的这些方法都位 ...