图论
文章平均质量分 54
介绍图论的
zero_orez6
这个作者很懒,什么都没留下…
展开
-
《算法竞赛指南》0x6B 升降梯上
升降梯上大意n层塔,m个按钮,每次拉拉杆上下电梯,拉拉杆需1s,上下一层需2s,求最小的上升到顶层的时间思路虽然看起来不像,但我们可以用最短路中的分层图来思考,遍历每个点以及每个拉杆所上下的楼层,将当前楼层与拉过拉杆所在的楼层相连接,权值为拉杆的位置,连完边之后,跑一遍dijkstra求出最短路即可。#include<bits/stdc++.h>#define LL long longusing namespace std;const int N=108600;struct n原创 2021-05-26 13:27:55 · 157 阅读 · 0 评论 -
《算法竞赛指南》GF与猫咪的关系
GF与猫咪的关系大意给定n个点,m个边,求两个边数最多的点之间的边数,注意当两个环之间有几个绳索数相等的连接方法时,只算其中一条连接方法拉紧。思路跑一遍flord,遍历数组找到其中的最大值。#include<bits/stdc++.h>using namespace std;int a[1086][1086];int ans=-1;int n,m;int main(){ memset(a,0x3f,sizeof(a)); scanf("%d%d",&n,&原创 2021-05-25 20:39:47 · 100 阅读 · 0 评论 -
[图论]最短路(包括SLF优化spfa的原理)
图的一些简单概念自环:从某个顶点出发连向自己的边。环:从某个顶点出发再连到自身的边重边从一个顶点到另一个顶点有两条边直接相连图的存储对于有向图,通常通过邻接矩阵和邻接表两种方法存储,而对于无向图,在没有特殊要求时,通常认为无向边是两条方向相反的有向边邻接表通过head数组来记录每个节点第一条边出发的节点在edge.to和edge.next中存储的位置,其中to和val 分别记录每个边的终点和权值,next 记录下一条边在to和val中存储的位置。struct node{ int to,ne原创 2021-05-25 20:17:05 · 488 阅读 · 5 评论