[luoguP3110] [USACO14DEC]驮运Piggy Back(SPFA || BFS)
传送门
以 1,2,n 为起点跑3次 bfs 或者 spfa
那么 ans = min(ans, dis[1][i] * B + dis[2][i] * E + dis[3][i] * P) (1 <= i <= n)
#include <queue> #include <cstdio> #include <cstring> #include <iostream> #define N 01 #define LL long long #define min(x, y) ((x) < (y) ? (x) : (y)) int B, E, P, n, m, cnt; int dis[4][N], head[N], to[N << 1], next[N << 1]; bool vis[N]; std::queue <int> q; LL ans = ~(1 << 31); inline int read() inline void add(int x, int y) inline void spfa(int s, int k) } } } } int main() spfa(1, 1); spfa(2, 2); spfa(n, 3); for(i = 1; i <= n; i++) ans = min(ans, (LL)(dis[1][i] * B + dis[2][i] * E + dis[3][i] * P)); printf("%lld\n", ans); return 0; }
下一篇:【模板】高斯消元法
spfa 最短路 bfs
spc文件怎么看,spc文件用什么打开?
0文件怎么看,0文件用什么打开?
sparseimage文件怎么看,sparseimage文件用什么打开?
sp文件怎么看,sp文件用什么打开?
dv文件怎么看,dv文件用什么打开?
soundpack文件怎么看,soundpack文件用什么打开?
dus文件怎么看,dus文件用什么打开?
dtw文件怎么看,dtw文件用什么打开?
spdf文件怎么看,spdf文件用什么打开?
0文件怎么看,0文件用什么打开?