Cod sursa(job #2538820)

Utilizator Leonard123Mirt Leonard Leonard123 Data 5 februarie 2020 10:28:01
Problema Ubuntzei Scor 20
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.73 kb
#include<bits/stdc++.h>
#define maxn 10005
#define inf 1000000000
using namespace std;
int n,m, k,d[maxn],rez[maxn],x,y,c,nod;
vector<pair<int,int> > v[maxn];
queue <int>q;

ifstream ccin("ubuntzei.in");
ofstream ccout("ubuntzei.out");

int main(){
  ccin>>n>>m>>k;
  for(int i=2; i<=n; i++)
    rez[i]=inf;
  for(int i=1; i<=k; i++)
    ccin>>d[i];
  while(m--){
    ccin>>x>>y>>c;
    v[x].push_back(make_pair(y,c));
    v[y].push_back(make_pair(x,c));
  }
  q.push(1);
  while(!q.empty()){
    nod=q.front();
    q.pop();
    for(int i=0; i<v[nod].size(); i++){
      if(rez[v[nod][i].first]>rez[nod]+v[nod][i].second)
        rez[v[nod][i].first]=rez[nod]+v[nod][i].second, q.push(v[nod][i].first);
    }
  }
  ccout<<rez[n];
  return 0;
}