
最短路
卡常带师
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
CF1422D Returning Home
题目链接:https://codeforces.com/problemset/problem/1422/D稍微思考一下可以很直接的得到,最后的答案无非两种情况:从瞬移点普通的走到终点从起点普通的走到终点由此我们可以转换问题,我们只需要求出起点到所有瞬移点的最小距离就好了这里可以发现,从一个点到一个点和两个点之间纵坐标,横坐标的差值相关,这里我们把每个点拆成3个,一个点代表瞬移点的横坐标,一个点作为瞬移点的纵坐标,然后横纵坐标都链接瞬移点。瞬移点链接终点,起点链接瞬移点横坐标,瞬移点纵坐标,.原创 2020-11-12 11:09:24 · 313 阅读 · 0 评论 -
CF1442C Graph Transpositions 分层图
题目链接:https://codeforces.com/problemset/problem/1442/C解题思路:发现当反转18次的时候,代价是超过最大的m的,所以分开讨论,首先计算出从起点到达终点最少需要多少次反转,如果超过18次,按最少次数转移,同时计算出最少次数下的最短路,当小于18次时,这个时候,所需要的所有代价不会超过long long(所以取模后不会丢失大小关系),所以可以直接使用dijkstra求解//#define LOCAL#include <bits/stdc++.h&.原创 2020-11-06 15:12:33 · 363 阅读 · 0 评论 -
拆位+堆优化最短路 牛妹游历城市 牛客练习赛67
对于一道题目,如果涉及到了位运算,二进制,那么优先考虑二进制,观察其性质本题以对点权的二进制构造边,构造32个虚点,从而建立出图堆优化优先队列,一定不要出现爆LL的情况,这样极有可能MLE,TLE,因为入队次数会变得乱糟糟的//#define LOCAL#include <bits/stdc++.h>using namespace std;#define ll long long#define mem(a, b) memset(a,b,sizeof(a))#defi.原创 2020-08-15 16:44:56 · 166 阅读 · 0 评论 -
次短路模板,待检查
//#define LOCAL#include <bits/stdc++.h>using namespace std;#define ll long long#define mem(a, b) memset(a,b,sizeof(a))#define INF 0x3f3f3f3f#define DNF 0x7f#define DBG printf("this is a input\n")#define fi first#define se second#define mk(.原创 2020-08-05 16:31:11 · 194 阅读 · 0 评论 -
树的直径以及直径的必经边条数(也可以求出具体边)
#include <bits/stdc++.h>using namespace std;#define ll long long#define mem(a, b) memset(a,b,sizeof(a))#define INF 0x3f3f3f3f#define p_queue priority_queue#define DBG printf("this is a input\n")#define fi first#define se second#define mk(a.原创 2020-05-18 16:12:10 · 385 阅读 · 0 评论 -
Gym - 101986F Pizza Delivery 最短路可行边+tarjan求桥 求必经边
#include <bits/stdc++.h>using namespace std;#define ll long long#define mem(a, b) memset(a,b,sizeof(a))#define INF 0x3f3f3f3f#define p_queue priority_queue#define DBG printf("this is a input\n")#define fi first#define se second#define mk(a.原创 2020-05-18 13:16:04 · 304 阅读 · 0 评论 -
最短路之差分约束
对于差分约束的题目,重于挖掘题目暗含的约束条件, 当图存在负环时无解1.最大化xn-x1 正常建边,跑最短路2.最小化xn-x1 反向建边,跑最长路//#define LOCAL#include <bits/stdc++.h>using namespace std;#define ll long long#define mem(a, b) memset(a,b,...原创 2020-04-25 13:10:20 · 296 阅读 · 0 评论 -
AcWing361 01分数划分+spfa判负环
//#define LOCAL#include <bits/stdc++.h>using namespace std;#define ll long long#define mem(a, b) memset(a,b,sizeof(a))#define INF 0x3f3f3f3f#define DNF 0x7f#define DBG printf("this is a...原创 2020-04-24 14:39:31 · 233 阅读 · 0 评论 -
最短路径树计数问题AcWing349
#include <bits/stdc++.h>using namespace std;#define ll long long#define mem(a, b) memset(a,b,sizeof(a))#define INF 0x3f3f3f3f#define DBG printf("this is a input\n")#define fi first#defi...原创 2020-04-18 10:31:03 · 250 阅读 · 0 评论 -
给定图,求经过N条边的最短路,采用矩阵乘法求解,或者倍增+floyd
#include <bits/stdc++.h>using namespace std;#define ll long long#define mem(a, b) memset(a,b,sizeof(a))#define INF 0x3f3f3f3f#define DBG printf("this is a input\n")#define fi first#defi...原创 2020-04-16 20:46:43 · 213 阅读 · 0 评论 -
floyd求无向图中最小环
#include <bits/stdc++.h>using namespace std;#define ll long long#define mem(a, b) memset(a,b,sizeof(a))#define INF 0x3f3f3f3f#define DBG printf("this is a input\n")#define fi first#defi...原创 2020-04-16 15:52:19 · 165 阅读 · 0 评论 -
AcWing342,如果一个最短路卡了Dijkstra和SPFA,那这个图一定有特殊性质,可以转换为DAG-top最短路
#include <bits/stdc++.h>using namespace std;#define ll long long#define mem(a, b) memset(a,b,sizeof(a))#define INF 0x3f3f3f3f#define DBG printf("this is a input\n")#define fi first#defi...原创 2020-04-16 10:00:12 · 141 阅读 · 0 评论 -
分层图模版--堆优化dij--dp
#include <bits/stdc++.h>using namespace std;#define ll long long#define mem(a, b) memset(a,b,sizeof(a))#define INF 0x3f3f3f3f#define DBG printf("this is a input\n")#define fi first#defi...原创 2020-03-22 14:14:02 · 328 阅读 · 0 评论 -
优先队列优化dij模版
struct node{ int v; ll value; node(int a, ll b):v(a),value(b){}; bool operator < (const node& no) const { return value > no.value; }};void dijkstra(){ m...原创 2020-03-13 14:16:32 · 283 阅读 · 0 评论 -
分层图最短路之模版
#include <bits/stdc++.h>using namespace std;#define ll long long#define mem(a, b) memset(a,b,sizeof(a))#define INF 0x3f3f3f3f#define DBG printf("this is a input\n")#define fi first#defi...原创 2020-02-20 15:28:28 · 185 阅读 · 0 评论 -
K短路-POJ2449
#include <queue>#include <iostream>#include <algorithm>#include <string.h>#include <stdio.h>using namespace std;#define ll long long#define mem(a, b) memset(a,b,...原创 2020-02-19 14:56:15 · 158 阅读 · 0 评论