Cod sursa(job #2464997)

Utilizator bluestorm57Vasile T bluestorm57 Data 29 septembrie 2019 11:54:05
Problema Traseu Scor 20
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.87 kb
#include <bits/stdc++.h>

using namespace std;

ifstream f("traseu.in");
ofstream g("traseu.out");

const int NMAX = 65;
int n,m,flow[NMAX][NMAX];
long long val[NMAX];
vector <pair <int, int> > v[NMAX];
deque <pair <int, int> > q;

int main(){
    int i,j,k,x,y,z,node,father;
    f >> n >> m;
    for(i = 1 ; i <= m ; i++){
        f >> x >> y >> z;
        v[x].push_back(make_pair(y,z));
    }

    q.push_back(make_pair(1,0));
    while(!q.empty()){
        node = q.front().first;
        father = q.front().second;
        q.pop_front();

        for(auto it: v[node])
            if(it.first != father && !flow[node][it.first]){
                val[it.first] += 1LL * (val[node] + it.second);
                flow[node][it.first]++;
                q.push_back(make_pair(it.first,node));
            }
    }

    g << val[1];

    return 0;
}