【二分+SPFA】修建道路(road)
(四五年以前的老草稿,作为强迫症还是发布出来吧)
修建道路(road.pas/c/cpp)
[问题描述]
NOIP2012的参赛者LG异想天开打算修建一条磁悬浮列车的通道连接现代OI王国的首都(编号为1)和AY的家(编号为n).
当然了,现代OI集团的n(1<=n<=1000)座城市之间没有任何的磁悬浮通道,而LG通过实地勘测发现,一共有p(1<=P<=10000)对城市之间可以建磁悬浮通道.
在这p对城市之中,第i对城市分别为ai,bi,它们间的距离为li(1<=li<=1000000).数据中保证每对{ai,bi}最多只出现1次.
现代OI集团决定免费帮LG修建最多k条线路的磁悬浮通道,而LG要花的钱,是他自己负责修建的那些线路的最长的那条路的长度.
LG当然想花最少的钱......他想知道他最少能花多少钱.
[输入描述]
第1行:3个用空格隔开的整数:n,p,以及k
第2..p+1行:第i+1行为3个用空格隔开的整数:ai,bi,li
[样例输入]
5 7 1
1 2 5
3 1 4
2 4 8
3 2 3
5 2 9
3 4 7
4 5 6
[样例说明]
现代OI集团一共有5个城市.城市1不能直接与城市4,5相连.城市5不能直接与城市1,3相连.其余所有城市间均可修建轨道.现代OI集团可以免费为LG修建一条线路.
[输出描述]
输出1个整数,为LG在这项工程上的最小支出.如果任务不可能完成,输出-1
[输出样例]
4
[样例说明]
LG选择如下的修建方案:1->3,3->2,2->5,这3条路线的长度分别为4,3,9.LG让现代OI集团免费修建那条长度为9的路线,于是,他所需要花费的钱为4.
这道题要做出来就必须审清题意,第一,题目要解的是需要LG自费的路段中最大的权值,而非路径权值和;第二,现代OI集团会使K个路段的权值归零,显然,最优解要求那免费修的K个路段必须是路径中权值最大的K个。这意味着不能再单纯地求最短路,因为最终答案选定的那条路径在免费修K条路段之前也许并不是该图中的最短路。
这时,我们完全可以假设编号为i的某路段权值就是答案,也就是把编号为i的路段作为LG自费的最长路段。如果将所有路段以长度有小到大排序,我们就可以用二分思想找到i的值。
【二分+SPFA】修建道路(road)的更多相关文章
- 洛谷P1462 通往奥格瑞玛的道路(二分+spfa,二分+Dijkstra)
洛谷P1462 通往奥格瑞玛的道路 二分费用. 用血量花费建图,用单源最短路判断 \(1\) 到 \(n\) 的最短路花费是否小于 \(b\) .二分时需要不断记录合法的 \(mid\) 值. 这里建 ...
- UVALive 4223 Trucking 二分+spfa
Trucking 题目连接: https://icpcarchive.ecs.baylor.edu/index.php?option=com_onlinejudge&Itemid=8& ...
- BZOJ 1626: [Usaco2007 Dec]Building Roads 修建道路( MST )
计算距离时平方爆了int结果就WA了一次...... ------------------------------------------------------------------------- ...
- bzoj 1626: [Usaco2007 Dec]Building Roads 修建道路 -- 最小生成树
1626: [Usaco2007 Dec]Building Roads 修建道路 Time Limit: 5 Sec Memory Limit: 64 MB Description Farmer J ...
- poj 2049(二分+spfa判负环)
poj 2049(二分+spfa判负环) 给你一堆字符串,若字符串x的后两个字符和y的前两个字符相连,那么x可向y连边.问字符串环的平均最小值是多少.1 ≤ n ≤ 100000,有多组数据. 首先根 ...
- codevs 1183 泥泞的道路 (二分+SPFA+差分约束)
/* 二分答案(注意精度) 对于每一个答案 有(s1+s2+s3...)/(t1+t2+t3...)>=ans 时符合条件 这时ans有变大的空间 对于上述不等式如果枚举每一条路显得太暴力 化简 ...
- luogu题解 P1462 【通往奥格瑞玛的道路】二分+spfa
题目链接: https://www.luogu.org/problemnew/show/P1462 思路: 又是一道水题,很明显二分+最短路 而且这道题数据非常水,spfa有个小错误居然拿了91分还比 ...
- 洛谷 P1462 通往奥格瑞玛的道路——二分+spfa
上一波链接 https://www.luogu.org/problem/P1462 这道题我们考虑二分答案 然后每次跑一次spfa判断是否能够到达n点 tips:在不考虑负权边的前提下我们写最短路最好 ...
- [codevs 1183][泥泞的道路(二分+spfa)
题目:http://dev.codevs.cn/problem/1183/ 分析:这个和最优比率生成树很像,都可以二分答案的,只不过判定方面一个是求是否有最短路径,一个是求是否有生成树.假设等待判定的 ...
随机推荐
- H5学习之--前端和PHP后端的简单交互
最近在学习前端的东西,H5+CSS3+JS,又分别学习了原生JS和jQuery库,还有Bootstrap框架,因为我是做ios开发的,所以先熟悉WebApp相关的开发知识,其他的学习资料,网上有很多的 ...
- 简单深搜:POJ1546——Sum it up
结束了三分搜索的旅程 我开始迈入深搜的大坑.. 首先是一道比较基础的深搜题目(还是很难理解好么) POJ 1564 SUM IT UP 大体上的思路无非是通过深搜来进行穷举.匹配 为了能更好地理解深搜 ...
- 160307、Java调用Oracle存储过程返回结果集
一:无返回值的存储过程调用 存储过程: CREATE OR REPLACE PROCEDURE PRO_1(PARA1 IN VARCHAR2,PARA2 IN VARCHAR2) AS BEGI ...
- QBC检索和本地SQL检索
细说QBC:QBC(Query By Criteria) 查询:这种方式比较面向对象方式,因为是面向对象,所以查询时参数名就是所查询的类的属性名并不是数据库的表的列名重点是有三个描述条件的对象:Res ...
- C语言实现单链表(带头节点)
C语言在实现单链表存储时需要注意的几点: 1.定义结构体,typedef:用于给结构体另命名 // 定义结构体类型 typedef struct Node{ int data; struct Node ...
- web安全之xss攻击
xss攻击的全称是Cross-Site Scripting (XSS)攻击,是一种注入式攻击.基本的做法是把恶意代码注入到目标网站.由于浏览器在打开目标网站的时候并不知道哪些脚本是恶意的,所以浏览器会 ...
- 一直深深困扰我的问题——hadoop 重启集群后,之前运行的job运行状态都丢失了
努力之后总是存在回报的,我花了三天时间终于找到了问题所在: 配置文件yarn-site.xml: <property> <name>yarn.resourcema ...
- inode file 结构
inode位图(inode Bitmap) 和块位图类似,本身占一个块,其中每个bit表示一个inode是否空闲可用. inode表(inode Table) 我们知道,一个文件除了数据需要存储之外, ...
- android sdk 中跨平台部分
跨平台部分: platforms samples sources system-images 这几个可以直接拷贝即可
- CLR via 笔记 5.3 值类型的装箱和拆箱
1.装箱 为了将一个值类型转换成一个引用类型,要使用一个名为装箱(Boxing)的机制. 1.在托管堆中分配好内存.分配的内存量是值类型的各个字段需要的内存量加上托管堆的所有对象都有的两个额外成员(类 ...