loj #136
最小瓶颈路
做最小生成树是进行特判即可
时间复杂度 n * k
#include <bits/stdc++.h>
const int N = 1010, M = 1e5 + 10;
struct Node {
int u, v, w;
bool operator < (const Node a) const {return w < a.w;}
} E[M];
int X[N], Y[N];
int n, m, k;
int fa[N];
int Answer[N];
int Get(int x) {return x == fa[x] ? x : fa[x] = Get(fa[x]);}
int main() {
std:: cin >> n >> m >> k;
for(int i = 1; i <= m; i ++) std:: cin >> E[i].u >> E[i].v >> E[i].w;
for(int i = 1; i <= k; i ++) std:: cin >> X[i] >> Y[i];
std:: sort(E + 1, E + m + 1);
for(int i = 1; i <= n; i ++) fa[i] = i;
int js = 0;
for(int i = 1; i <= m && js < n - 1; i ++) {
int fax = Get(E[i].u), fay = Get(E[i].v);
if(fax == fay) continue;
for(int j = 1; j <= k; j ++) {
if(Answer[j]) continue;
int fa1 = Get(X[j]), fa2 = Get(Y[j]);
if((fa1 == fax && fa2 == fay) || (fa1 == fay && fa2 == fax)) {
Answer[j] = E[i].w;
}
}
fa[fax] = fay;
js ++;
}
for(int i = 1; i <= k; i ++) {
std:: cout << (Answer[i] == 0 ? -1 : Answer[i]) << "\n";
}
return 0;
}
loj #136的更多相关文章
- LOJ题解#136. 最小瓶颈路 DFS+Kruskal
题目链接: https://loj.ac/problem/136 思路: 在我的这篇博客中已经讲到什么是最短瓶颈路,同时给出了一个用Kruskal求最短瓶颈路的一个简洁易懂的方法,然而这道题目可以看作 ...
- leetcode 136
136. Single Number Given an array of integers, every element appears twice except for one. Find that ...
- Leetcode 136 137 260 SingleNumber I II III
Leetccode 136 SingleNumber I Given an array of integers, every element appears twice except for one. ...
- [Noi2016]区间 BZOJ4653 洛谷P1712 Loj#2086
额... 首先,看到这道题,第一想法就是二分答案+线段树... 兴高采烈的认为我一定能AC,之后发现n是500000... nlog^2=80%,亲测可过... 由于答案是求满足题意的最大长度-最小长 ...
- Loj #2192. 「SHOI2014」概率充电器
Loj #2192. 「SHOI2014」概率充电器 题目描述 著名的电子产品品牌 SHOI 刚刚发布了引领世界潮流的下一代电子产品--概率充电器: 「采用全新纳米级加工技术,实现元件与导线能否通电完 ...
- Loj #3096. 「SNOI2019」数论
Loj #3096. 「SNOI2019」数论 题目描述 给出正整数 \(P, Q, T\),大小为 \(n\) 的整数集 \(A\) 和大小为 \(m\) 的整数集 \(B\),请你求出: \[ \ ...
- Loj #3093. 「BJOI2019」光线
Loj #3093. 「BJOI2019」光线 题目描述 当一束光打到一层玻璃上时,有一定比例的光会穿过这层玻璃,一定比例的光会被反射回去,剩下的光被玻璃吸收. 设对于任意 \(x\),有 \(x\t ...
- Loj #3089. 「BJOI2019」奥术神杖
Loj #3089. 「BJOI2019」奥术神杖 题目描述 Bezorath 大陆抵抗地灾军团入侵的战争进入了僵持的阶段,世世代代生活在 Bezorath 这片大陆的精灵们开始寻找远古时代诸神遗留的 ...
- Loj #2542. 「PKUWC2018」随机游走
Loj #2542. 「PKUWC2018」随机游走 题目描述 给定一棵 \(n\) 个结点的树,你从点 \(x\) 出发,每次等概率随机选择一条与所在点相邻的边走过去. 有 \(Q\) 次询问,每次 ...
随机推荐
- 『Python基础练习题』day05
# 请将列表中的每个元素通过 "_" 链接起来. users = ['毛利兰', '柯南', '怪盗基德'] # 请将元组 v1 = (11, 22, 33) 中的所有元素追加到列 ...
- FaceBook CVPR2014: DeepFace解读
DeepFace是Facebook在2014年的CVPR上提出来的,后续出现的DeepID和FaceNet也都体现DeepFace的身影,可以说DeepFace是CNN在人脸识别的奠基之作,目前深 ...
- 3_PHP表达式_5_数据类型转换_类型自动转换
以下为学习孔祥盛主编的<PHP编程基础与实例教程>(第二版)所做的笔记. PHP类型转换分为类型自动转换和类型强制转换. 1.布尔型数据参与算数运算时,TRUE被转换为整数1,FALSE被 ...
- javscript函数的运用
函数,一段能够自动完成某些功能的代码块,函数的出现,既解决了重复使用重一功能的需求,又可以避免代码的臃肿性. 使用函数有两个要求:必须调用后才可以执行;函数名不要和关键字以及系统函数相同; 函数主要有 ...
- C语言中参数的传递
普通情况: 调用函数参数的传递,是采取入栈的方式,先上图一张: Fun是被调用的函数,而为了演示其参数传递的过程,特意多设了几个参数,其传递参数的汇编代码如下: 可以看出,汇编代码中将这9个参数的前5 ...
- 修改ssh的22端口
将ssh22端口修改为12345 https://www.cnblogs.com/chen-lhx/p/3974605.html # iptables开放12345端口iptables -I INPU ...
- 极度舒适的 Python 入门教程,小猪佩奇也能学会~
编程几乎已经成为现代人的一门必修课,特别是 Python ,不仅长期霸占编程趋势榜.薪资榜第一,还屡屡进入小学教材,甚至成为浙江省信息技术高考项目-- 今天,小编带来了一门极度舒适的 Python 入 ...
- CaaSP4 - 命令记录
worker01:~ # tree /var/lib/containers/storage/ -L 1 /var/lib/containers/storage/ ├── mounts ├── over ...
- 基于Keras实现mnist-官方例子理解
前言 久闻keras大名,最近正好实训,借着这个机会好好学一下. 首先推荐一个API,可能稍微有点旧,但是写的是真的好 https://keras-cn.readthedocs.io/en/lates ...
- Windows——Office使用激活工具激活后仍提示激活
问题: Office使用激活工具激活后仍提示激活 分析: 造成该问题的原因通常是未删除操作系统预置Office导致的, 解决方案: 调出运行,输入regedit打开注册表编辑器, 依次打开 HKE ...