(四五年以前的老草稿,作为强迫症还是发布出来吧)

修建道路(road.pas/c/cpp)

[问题描述]

  1. NOIP2012的参赛者LG异想天开打算修建一条磁悬浮列车的通道连接现代OI王国的首都(编号为1)和AY的家(编号为n).
  1. 当然了,现代OI集团的n(1<=n<=1000)座城市之间没有任何的磁悬浮通道,而LG通过实地勘测发现,一共有p(1<=P<=10000)对城市之间可以建磁悬浮通道.
  1. 在这p对城市之中,第i对城市分别为ai,bi,它们间的距离为li(1<=li<=1000000).数据中保证每对{ai,bi}最多只出现1次.
  1. 现代OI集团决定免费帮LG修建最多k条线路的磁悬浮通道,而LG要花的钱,是他自己负责修建的那些线路的最长的那条路的长度.
  1. LG当然想花最少的钱......他想知道他最少能花多少钱.

[输入描述]

  1. 1行:3个用空格隔开的整数:n,p,以及k
  1. 2..p+1行:第i+1行为3个用空格隔开的整数:ai,bi,li

[样例输入]

  1. 5 7 1
  1. 1 2 5
  1. 3 1 4
  1. 2 4 8
  1. 3 2 3
  1. 5 2 9
  1. 3 4 7
  1. 4 5 6

[样例说明]

  1. 现代OI集团一共有5个城市.城市1不能直接与城市4,5相连.城市5不能直接与城市1,3相连.其余所有城市间均可修建轨道.现代OI集团可以免费为LG修建一条线路.

[输出描述]

  1. 输出1个整数,为LG在这项工程上的最小支出.如果任务不可能完成,输出-1

[输出样例]

  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)的更多相关文章

  1. 洛谷P1462 通往奥格瑞玛的道路(二分+spfa,二分+Dijkstra)

    洛谷P1462 通往奥格瑞玛的道路 二分费用. 用血量花费建图,用单源最短路判断 \(1\) 到 \(n\) 的最短路花费是否小于 \(b\) .二分时需要不断记录合法的 \(mid\) 值. 这里建 ...

  2. UVALive 4223 Trucking 二分+spfa

    Trucking 题目连接: https://icpcarchive.ecs.baylor.edu/index.php?option=com_onlinejudge&Itemid=8& ...

  3. BZOJ 1626: [Usaco2007 Dec]Building Roads 修建道路( MST )

    计算距离时平方爆了int结果就WA了一次...... ------------------------------------------------------------------------- ...

  4. bzoj 1626: [Usaco2007 Dec]Building Roads 修建道路 -- 最小生成树

    1626: [Usaco2007 Dec]Building Roads 修建道路 Time Limit: 5 Sec  Memory Limit: 64 MB Description Farmer J ...

  5. poj 2049(二分+spfa判负环)

    poj 2049(二分+spfa判负环) 给你一堆字符串,若字符串x的后两个字符和y的前两个字符相连,那么x可向y连边.问字符串环的平均最小值是多少.1 ≤ n ≤ 100000,有多组数据. 首先根 ...

  6. codevs 1183 泥泞的道路 (二分+SPFA+差分约束)

    /* 二分答案(注意精度) 对于每一个答案 有(s1+s2+s3...)/(t1+t2+t3...)>=ans 时符合条件 这时ans有变大的空间 对于上述不等式如果枚举每一条路显得太暴力 化简 ...

  7. luogu题解 P1462 【通往奥格瑞玛的道路】二分+spfa

    题目链接: https://www.luogu.org/problemnew/show/P1462 思路: 又是一道水题,很明显二分+最短路 而且这道题数据非常水,spfa有个小错误居然拿了91分还比 ...

  8. 洛谷 P1462 通往奥格瑞玛的道路——二分+spfa

    上一波链接 https://www.luogu.org/problem/P1462 这道题我们考虑二分答案 然后每次跑一次spfa判断是否能够到达n点 tips:在不考虑负权边的前提下我们写最短路最好 ...

  9. [codevs 1183][泥泞的道路(二分+spfa)

    题目:http://dev.codevs.cn/problem/1183/ 分析:这个和最优比率生成树很像,都可以二分答案的,只不过判定方面一个是求是否有最短路径,一个是求是否有生成树.假设等待判定的 ...

随机推荐

  1. nyoj1237 最大岛屿(河南省第八届acm程序设计大赛)

    题目1237 pid=1237" style="color:rgb(55,119,188)">题目信息 执行结果 本题排行 讨论区 最大岛屿 时间限制:1000 m ...

  2. ios应用, 设置不自己主动备份到iCloud

    原创文章,转载请注明出处 ios项目,假设有内置下载或者程序动态生成文件的话,就要注意所下载或生成的文件,要不要自己主动备份到iCloud 假设没有合适的理由就自己主动上传大文件的话,可能在不能通过应 ...

  3. Struts2_day02--Struts2封装获取表单数据方式

    Struts2封装获取表单数据方式 原始方式获取表单封装到实体类对象 属性封装(会用) 1 直接把表单提交属性封装到action的属性里面 2 实现步骤 (1)在action成员变量位置定义变量 - ...

  4. poj_2823 单调队列

    题目大意 给定一行数,共N个.有一个长度为K的窗口从左向右滑动,窗口中始终有K个数字,窗口每次滑动一个数字.求各个时刻窗口中的最大值和最小值. 题目分析 直接搜索,复杂度为O(n^2).考虑使用单调队 ...

  5. hdu4122(单调队列)

    处理题目中给的日期,然后用单调队列维护 Alice's mooncake shop Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32 ...

  6. Tiled地图编辑软件

    Tiled官网: http://www.mapeditor.org/ 一个比较简单好用的地图编辑软件.百度可以找到很多教程. 在Egret中,官网提供了Tiled的工具类,但是教程和文档极少...只能 ...

  7. 【BZOJ3781、2038】莫队算法2水题

    [BZOJ3781]小B的询问 题意:有一个序列,包含N个1~K之间的整数.他一共有M个询问,每个询问给定一个区间[L..R],求Sigma(c(i)^2)的值,其中i的值从1到K,其中c(i)表示数 ...

  8. Java中break、continue、return语句的使用区别

    break.continue.return之间的区别与联系 在软件开发过程中,逻辑清晰是非常之重要的. 代码的规范也是非常重要的.往往细节决定成败.在编写代码的时候,一定要理解语言的作用以及使用的方法 ...

  9. SpringBoot--属性加载顺序

    属性加载顺序: 1.在命令行中传入的参数: 2.SPRING_APPLICATION_JSON中的属性:SPRING_APPLICATION_JSON是以JSON格式配置在系统环境变量中内容: 3.j ...

  10. kubernetes基础知识:限制POD和容器运行的CPU、内存

    限制运行内存 https://kubernetes.io/docs/tasks/configure-pod-container/assign-memory-resource/ 先看一个pod的yaml ...