Submission details
Task:Shortest Routes I
Sender:aalto25e_007
Submission time:2025-10-05 19:00:54 +0300
Language:C++ (C++17)
Status:COMPILE ERROR

Compiler report

cc1plus: error: '::main' must return 'int'

Code

#include <iostream>
#include <vector>
#include <queue>
#include <climits>
using namespace std;

void dijkstra(const vector<vector<pair<long long,long long>>> &adj, long long start, vector<long long> &dist) {
    long long n = adj.size();
    dist.assign(n, LLONG_MAX);
    vector<bool> processed(n, false);

    priority_queue<pair<long long,long long>, vector<pair<long long,long long>>, greater<pair<long long,long long>>> pq;
    dist[start] = 0;
    pq.push({0, start});

    while (!pq.empty()) {
        long long a = pq.top().second;
        pq.pop();
        if (processed[a]) continue;
        processed[a] = true;

        for (auto [b, w] : adj[a]) {
            if (dist[a] + w < dist[b]) {
                dist[b] = dist[a] + w;
                pq.push({dist[b], b});
            }
        }
    }
}

long long main() {
    long long n, m;
    cin >> n >> m;
    vector<vector<pair<long long,long long>>> adj(n);

    for (long long i = 0; i < m; i++) {
        long long a, b, w;
        cin >> a >> b >> w;
        a--; b--;  
        adj[a].push_back({b, w});
        
    }

    vector<long long> dist;
    dijkstra(adj, 0, dist);

    for (long long i = 0; i < n; i++) {
       
        cout << dist[i] << " ";
    }

}