2012 Multi-University Training Contest 2
http://acm.hdu.edu.cn/showproblem.php?pid=4313
贪心算法:类似kruskal最小生成树的过程,不过此处将边按权值从大到小排列,每次将边加进来时要判断是否会使两个危险的点连通,是的话这条边就是需要被删除的,否则将它加到树上。
还有一种 说是树形DP 不懂
这题一直WA 看了秦老师的代码 用的--int64 就改了下数据类型 过了。。。
并查集+快排+去掉危险的结点
1 #include<stdio.h> 2 #include<string.h> 3 #include<stdlib.h> 4 typedef struct node 5 { 6 int v1,v2,e; 7 }st; 8 int father[100001],w,f[100001]; 9 st q[100001]; 10 int cmp(const void *a,const void *b) 11 { 12 return ((st *)b)->e-((st *)a)->e; 13 } 14 int find(int x) 15 { 16 if(x!=father[x]) 17 father[x] = find(father[x]); 18 return father[x]; 19 } 20 void union1(int x,int y,int z) 21 { 22 father[x] = y; 23 } 24 int main() 25 { 26 int i,j,k,n,m,t,flag; 27 __int64 s; 28 scanf("%d", &t); 29 while(t--) 30 { 31 memset(f,0,sizeof(f)); 32 scanf("%d%d", &n,&k); 33 s = 0; 34 for(i = 0; i < n ; i++) 35 father[i] = i; 36 for(i = 0; i < n-1 ; i++) 37 scanf("%d%d%d", &q[i].v1,&q[i].v2,&q[i].e); 38 qsort(q,n-1,sizeof(q[0]),cmp); 39 for(i = 0 ; i < k ;i++) 40 { 41 scanf("%d",&w); 42 f[w] = 1; 43 } 44 for(i = 0 ;i < n-1 ; i++) 45 { 46 int px = find(q[i].v1); 47 int py = find(q[i].v2); 48 if(px!=py) 49 { 50 if(f[px]!=1||f[py]!=1) 51 { 52 union1(px,py,q[i].e); 53 if(f[px]==1) 54 f[py] = 1; 55 } 56 else 57 s+=q[i].e; 58 } 59 } 60 printf("%I64d\n",s); 61 } 62 return 0; 63 }
转载于:https://www.cnblogs.com/shangyu/archive/2012/07/27/2611164.html
2012 Multi-University Training Contest 2相关推荐
- Sichuan University Programming Contest 2018 Preliminary
嗯为了防止大家AK,所以这次的A题和K题我们就当做不存在好了! 经历了昨天写了两个多小时的博客没保存的心态炸裂,今天终于下了个Markdown.所以我猜这篇的格式应该会更好看一点! 好吧废话不多说 题 ...
- HDU 6091 - Rikka with Match | 2017 Multi-University Training Contest 5
思路来自 某FXXL 不过复杂度咋算的.. /* HDU 6091 - Rikka with Match [ 树形DP ] | 2017 Multi-University Training Conte ...
- HDU 6051 - If the starlight never fade | 2017 Multi-University Training Contest 2
/* HDU 6051 - If the starlight never fade [ 原根,欧拉函数 ] | 2017 Multi-University Training Contest 2 题意: ...
- HDU 6058 - Kanade's sum | 2017 Multi-University Training Contest 3
/* HDU 6058 - Kanade's sum [ 思维,链表 ] | 2017 Multi-University Training Contest 3 题意:给出排列 a[N],求所有区间的第 ...
- 2017 Multi-University Training Contest - Team 3 Kanade's sum hd6058
地址:http://acm.split.hdu.edu.cn/showproblem.php?pid=6058 题目: Kanade's sum Time Limit: 4000/2000 MS (J ...
- 2018 Multi-University Training Contest 3 Problem F. Grab The Tree 【YY+BFS】
传送门:http://acm.hdu.edu.cn/showproblem.php?pid=6324 Problem F. Grab The Tree Time Limit: 2000/1000 MS ...
- hdu 4925 Apple Tree--2014 Multi-University Training Contest 6
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4925 Apple Tree Time Limit: 2000/1000 MS (Java/Others ...
- HUST-2015 Multi-University Training Contest 9
2015 Multi-University Training Contest 9 solutions BY xudyh 1001.Expression 记dp_{l,r}dpl,r表示l,rl, ...
- 2018 Multi-University Training Contest 4 Problem E. Matrix from Arrays 【打表+二维前缀和】
任意门:http://acm.hdu.edu.cn/showproblem.php?pid=6336 Problem E. Matrix from Arrays Time Limit: 4000/20 ...
- 2017 Multi-University Training Contest - Team 1
2017 Multi-University Training Contest - Team 1 01 签到的 #include<bits/stdc++.h> using names ...
最新文章
- php400错误的请求,Wordpress中的Ajax返回400错误请求,但不确定如何进一步调试 - WordPress - srcmini...
- python【Configparser解析配置文件库】Python3中的configparser模块
- LeetCode H-Index II(二分法)
- Windows下配置Java开发环境
- mysql过程异常处理_mysql数据库存储过程异常处理
- linux 使用退格键时出现^H解决方法
- linux系统调用open、write、close、read以及stat函数详解
- 算法 - KMP算法(字符串匹配)
- Illegal group reference异常的分析
- Alsa里面恶心的DAPM
- linux环境安装 kafka 0.8.2.1 jdk1.6
- jdk1.8新特性之lambda表达式及在Android Studio中的使用举例
- oracle强大函数,oracle 函数排行
- 瑞元双玻组件助力浙江多座分布式电站高效运行
- 苹果Mac数据恢复工具:​​​​​​​​Disk Drill Enterprise
- android 自定义心电图,Android自定义 View 练习 —— 心电图的绘制
- 云控微信开发SDK使用教程--微信联系人标签新增,修改通知服务端
- 新浪微博热搜榜“背后的男人”讲述热搜背后的秘密
- Vite + Vue3 项目中,使用 vw/vh 适配移动端,并通过 Android Studio 打包
- 【HTTP协议其实很简单】03.自己写一个微型静态Web服务器
热门文章
- 怎么用小学生计算机玩游戏,小学生不应该玩电脑游戏作文
- css将空的div撑开,如何使用css将空的浮动div伸展到可用的全高度?
- java regex 正则表达式 提取数字和去除数字,过滤数字,提取价格
- Tomcat假死的原因及解决方案
- git SSL certificate problem: unable to get local issuer certificate
- Apache No installed service named “Apache2.4“的解决办法
- 配置Git for windows(Git bash)登录GitHub
- mysql日志监控 zabbix_zabbix监控mysql+报警
- pcm 采样率转换_高速模数转换器 ADC 树立了实时监测和控制的标准
- 最长回文子序列与最长回文子串