Cod sursa(job #3156265)

Utilizator lefterache_stefanLefterache Stefan lefterache_stefan Data 11 octombrie 2023 00:08:13
Problema Algoritmul lui Dijkstra Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.85 kb
#include <fstream>
#include <vector>
#include <queue>
using namespace std;

typedef pair<int, int> pi;

ifstream fin("dijkstra.in");
ofstream fout("dijkstra.out");

const int INF = 1e9 + 1;
const int MARIME = 50005;

int n, m, start = 1, dist[MARIME];

priority_queue<pi, vector<pi>, greater<pi>> pq;
vector<pi> graf[MARIME];

int main() {
    // citire si pregatire
    fin >> n >> m;
    for (int i = 1; i <= n; i++) {
        dist[i] = INF;
    }
    dist[start] = 0;
    pq.push(make_pair(start, 0));
    for (int i = 1; i <= m; i++) {
        int x, y, d;
        fin >> x >> y >> d;
        graf[x].push_back(make_pair(y, d));
        // graf[y].push_back(make_pair(x, d));
    }
    // dijkstra
    //
    // afisare
    for (int i = 2; i <= n; i++) {
        fout << (dist[i] == INF ? 0 : dist[i]) << ' ';
    }
    return 0;
}