Cod sursa(job #3372386)

Utilizator CiulinAndreeaCiulin Andreea Iuliana CiulinAndreea Data 3 noiembrie 2026 14:58:17
Problema Sate Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.71 kb
#include <vector>
#include <utility>
#include <fstream>
using namespace std;

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

bool vizitat[30001];
int distanta[30001];
vector<pair<int, int>> graf[30001];

void DFS(int nod) {
    vizitat[nod]=true;

    for (auto vecin : graf[nod]) {
        if (!vizitat[vecin.first]) {
            distanta[vecin.first]=distanta[nod] + vecin.second;
            DFS(vecin.first);
        }
    }
}

int main() {
    int N, M, X, Y ,i,j, d;
    fin>> N>> M>> X>>Y;
    for (int c=1; c<=M; c++) {
        fin>>i>>j>>d;
        graf[i].push_back({j,d});
        graf[j].push_back({i,-d});
    }
    distanta[X]=0;
    DFS(X);
    fout<<distanta[Y];
    fin.close();
    fout.close();
}