最短路+最小生成树
最短路最小生成树的模板加相关题
Demoo.
来记录不会的题啦
展开
-
城市间紧急救援
作为一个城市的应急救援队伍的负责人,你有一张特殊的全国地图。在地图上显示有多个分散的城市和一些连接城市的快速道路。每个城市的救援队数量和每一条连接两个城市的快速道路长度都标在地图上。当其他城市有紧急求助电话给你的时候,你的任务是带领你的救援队尽快赶往事发地,同时,一路上召集尽可能多的救援队。 输入格式: 输入第一行给出4个正整数N、M、S、D,其中N(2≤N≤500)是城市的个数,顺便假设城市的编号为0 ~ (N−1);M是快速道路的条数;S是出发地的城市编号;D是目的地的城市编号。 第二行给出N个正原创 2022-04-14 20:24:27 · 192 阅读 · 0 评论 -
畅通工程之最低成本建设问题
某地区经过对城镇交通状况的调查,得到现有城镇间快速道路的统计数据,并提出“畅通工程”的目标:使整个地区任何两个城镇间都可以实现快速交通(但不一定有直接的快速道路相连,只要互相间接通过快速路可达即可)。现得到城镇道路统计表,表中列出了有可能建设成快速路的若干条道路的成本,求畅通工程需要的最低成本。 输入格式: 输入的第一行给出城镇数目N (1<N≤1000)和候选道路数目M≤3N;随后的M行,每行给出3个正整数,分别是该条道路直接连通的两个城镇的编号(从1编号到N)以及该道路改建的预算成本。 输出原创 2022-04-08 16:57:42 · 257 阅读 · 0 评论 -
prim求最小生成树
适用条件:稠密图 #include<iostream> #include<algorithm> #include<cstring> using namespace std; const int N=1005; int g[N][N]; int dist[N]; int n,m; bool st[N]; int pime(){ memset(dist,0x3f,sizeof dist); int res=0; for(int i=0;i<n;i++){ .原创 2022-04-08 16:54:23 · 222 阅读 · 0 评论 -
路径(蓝桥杯+Dijkstra)
小蓝学习了最短路径之后特别高兴,他定义了一个特别的图,希望找到图 中的最短路径。 小蓝的图由 2021 个结点组成,依次编号 1 至 2021。 对于两个不同的结点 a, b,如果 a 和 b 的差的绝对值大于 21,则两个结点 之间没有边相连;如果 a 和 b 的差的绝对值小于等于 21,则两个点之间有一条 长度为 a 和 b 的最小公倍数的无向边相连。 例如:结点 1 和结点 23 之间没有边相连;结点 3 和结点 24 之间有一条无 向边,长度为 24;结点 15 和结点原创 2022-04-08 00:05:24 · 127 阅读 · 0 评论 -
disk求最短路
思想: #include<iostream> #include<algorithm> #include<cstring> using namespace std; int n,m; bool st[510]; int g[510][510];//用来记录a->b的权重 int dist[510]; int dijk(){ memset(dist,0x3f,sizeof dist);//初始化各个点到1的距离 dist[1]=0;//初始化1的点为0 for原创 2022-04-07 23:47:30 · 233 阅读 · 0 评论