首页 > 其他分享 >通信(二分+SPFA好题)

通信(二分+SPFA好题)

时间:2024-01-27 11:34:02浏览次数:32  
标签:二分 输出 路径 好题 通信 升级 SPFA 基站 电缆


第1题     通信 查看测评数据信息

某城市有 N 座通信基站,P 条 双向 电缆,第 i 条电缆连接基站 Ai 和 Bi。特别地,1 号基站是通信公司的总站,N 号基站位于一座农场中。现在,农场主希望对通信线路进行升级,其中升级第 i 条电缆需要花费 Li。电话公司正在举行优惠活动。农场主可以指定一条从 1 号基站到 N 号基站的路径,并指定路径上不超过 K 条电缆,由电话公司免费提供升级服务。农场主只需要支付在该路径上剩余的电缆中,升级价格最贵的那条电缆的花费即可。

求至少用多少钱可以完成升级。0≤K<N≤1000,1≤P≤10000 ,1≤Li≤1000000


输入格式

第 1 行:三个整数 N,P,K。

第 2..P+1 行:第 i+1 行包含三个整数 Ai,Bi,Li。

输出格式

包含一个整数表示最少花费。

若 1 号基站与 N 号基站之间不存在路径,则输出 −1

输入/输出例子1

输入:

5 7 1

1 2 5

3 1 4

2 4 8

3 2 3

5 2 9

3 4 7

4 5 6


输出:

4

样例解释



标签:二分,输出,路径,好题,通信,升级,SPFA,基站,电缆
From: https://www.cnblogs.com/didiao233/p/17991247

相关文章

  • 二分查找法理解
    最开始做这道题的时候没想到用这种方法,我之后也在想二分查找法什么时候能用。其本质上还是在有序的范围中找到目标的数。这道题也就是要找到最大的合金数。最基本的二分查找题目就是找到具体的那个数,等不等于那个数就是作为限制条件。那这一题呢就是花费要小于限定值。因此不......
  • spfa 详解
    算法基础 模板题 第1题    spfa最短路练习查看测评数据信息给定一个n个点m条边的有向图,图中可能存在重边和自环,边权可能为负数。请你求出1号点到n号点的最短距离,如果无法从1号点走到n号点,则输出impossible。数据保证不存在负权回路。1≤n,m≤100000......
  • 【学习笔记】二分图的边染色
    定义首先定义无向图的边着色。对无向图\(G\)的边着色,要求相邻的边涂不同种颜色。若\(G\)是\(k\)-边可着色的,但不是\(\left(k-1\right)\)-边可着色的,则称\(k\)是\(G\)的边色数。记为\(\chi^{\prime}\left(G\right)\)。Vizing定理若\(G\)是简单图,那么有......
  • Leetcode刷题第四天-双指针-二分法
    15:三个数之和链接:15.三数之和-力扣(LeetCode)em...双冲for循环,从头去遍历,0-(a+b)是否在列表中,最终timeout数组从小到大排序,设置三个指针,i从头遍历到lens-1,j从i+1开始,k从lens-1开始,sums==0,放入结果,大于0,k-1,小于0,j+1如果i和i+1比较,相同跳过的话,会丢结果,i和i-1相等跳过,因为i-1已......
  • 二分
    https://www.luogu.com.cn/problem/P8647?contestId=154515`include<bits/stdc++.h>definexfirstdefineysecondusingnamespacestd;typedefpair<int,int>PII;constintN=100010;typedeflonglongll;PIIp[N];intn,k;intfind(inta){longl......
  • 做题记录(数据结构+整体二分专题)
    情报传递对于每一个操作打上时间戳,对于\(T\)时刻的询问,即为询问路径上比\(T-c\)的值小的数有几个。直接树剖上维护权值树状数组即可。宝石给定一棵树,\(n\)个顶点,每个点有一个宝石,类型为\(W_i\),约定\(W_i\lem\)。你有一个收集器,可以收集至多\(c\)个宝石,并且收集......
  • 代码随想录算法训练营第一天| 704. 二分查找、27. 移除元素。
    704.二分查找题目链接:https://leetcode.cn/problems/binary-search/文章讲解:https://programmercarl.com/0704.二分查找.html简单的二分查找法,核心是认识区间的意义,注意以下几点:middle=low+(low+high)/2;这种写法可以防止溢出。注意low和high的循环条件判断,如果是左闭右闭......
  • CF-431-D-二分+数位DP
    431-D题目大意请你找到一个数\(n\),满足区间\([n+1,2n]\)中恰有\(m\)个数的二进制表示中有\(k\)个\(1\)。Solution这种区间中计数类型的题目首先相当数位DP。但是这里缺乏上下界,难点就在于观察到\(n\)的单调性(\([n+1,2n]\)中有\(k\)个\(1\)的数是单调不减的),简要证明:对于......
  • C# 二分法查询代码
    二分法查找,也称为折半法,是一种在有序数组中查找特定元素的搜索算法。使用二分法的前提条件是:在有序数组中查找特定元素publicstaticintSearchInsert(int[]nums,inttarget){intstart=0;//开始索引intend=nums.Length-1;//结束索引i......
  • 冒泡排序、选择排序、二分查找
    1publicstaticvoidmain(String[]args){2//冒泡排序3//定义一个数组,存储一些数据4int[]arr={5,3,1,2,9,6};5System.out.println("=========冒泡排序==========");6//定义一个循环轮数7fo......