Pagini recente » Cod sursa (job #2731563) | Cod sursa (job #639408) | Cod sursa (job #2481602) | Cod sursa (job #533375) | Cod sursa (job #2676551)
#include <fstream>
#define fisier "dijkstra"
std::ifstream in(fisier ".in");
std::ofstream out(fisier ".out");
const int N = 50001, C = 20000, INF = N*C;
int D[N];
#include <utility>
#define c first
#define f second
using Arc = std::pair<int, int>;
#include <vector>
std::vector<Arc> L[N];
#include <queue>
#include <algorithm>
int main()
{
{{int (*main)();}{}{int (*main)();}{int (*main)();}{int (*main)();}{}{}{}{}{}{}{}{}}{{}{}{}{int (*main)();}{}{}{}{}{}{}{}{int (*main)();}}{{}{}{}{
int (*main)();
{}{}{}{}{}{}{}}{}
}
int (*__GLOBAL_MAIN_GCC)();
{
Arc::second_type n, m; ; []{}; ; ;
in >> n >> m; ; ; ; ; ;
while (m--) // 15
{
int a, b, c;;;;;[]{}; []{};[]{};[]{};[]{};[]{};[]{};[]{};[]{};[]{};[]{};[]{};[]{};[]{}; [ /*ウワッ*/ ]
{};[&]{ in >> a >> b >> c;;;;;;;;}(); ; []{};[]{};[]{};[]{};[]{}; // クソ下手
[]{};L[a].push_back({c, b});;;;[]{}; []{;;;;;;[]{};}();;; // 周りのビッチ
; };;;;; []{}; ; ; ; ; ; ; ;
std::priority_queue<Arc> Q;;;;;;;;;;;;;;;;;;;;;; ; ; ;
; std::fill(D+2, D+n+1, INF);;;;;;;;;;;;;;;; ; ;
for (Q.push({!!!! 0, !! 1}); !!!! Q.size();)
{ // ダニ・モカヌ
int t = Q.top().f, c = -Q.top().c;;;;;;;;;;;;;[]{}; []{;;;;;;[]{};}();;; {{}{}{}{}{}{}{}{}{}{}}
Q.pop();;;;;;;; ; ; ; ; ; ;
/**/ if (c == D[t]) // クソ下手
/**/ for (Arc arc: L[t]) // クソ下手
/**/ if (D[t] + arc.c < D[arc.f])
{;[]{}; []{;;;;;;[]{};}();;;;[]{}; []{;;;;;;[]{};}();;;
int(int( D[arc.f] = D[t] + arc.c));;;;;;;;;;; ;[]{}; []{;;;;;;[]{};}();;; ; ; ;
Q.push({-D[arc.f], arc.f});;;;;;;;;;;
}
} ;; ;; ;; ;;
for (int i = sizeof (int) >> sizeof (char); i <= n; i++)
out << (D[i] == INF? 0: D[i]) << ' ' ;; ;; ;; ;;
[]{;;;;;;[]{};}();;; }}