Pagini recente » Cod sursa (job #2349179) | Cod sursa (job #2395886) | Cod sursa (job #923116) | Cod sursa (job #344783) | Cod sursa (job #675205)
Cod sursa(job #675205)
#include<fstream>
#include<vector>
#include<queue>
using namespace std;
#define inf 0x3f3f
ifstream f("ubuntzei.in");
ofstream g("ubuntzei.out");
struct nod
{
int y,c;
};
vector<vector< nod > > mat(10001);
vector< long > dist(10001,inf);
queue< long > q;
int n,m,k,i,j,orase[2001],x,y,c;
int main()
{
f>>n>>m;
f>>k;
for(i=1;i<=k;i++)
f>>orase[i];
for(i=1;i<=m;i++)
{
f>>x>>y>>c;
mat[x].push_back((nod) {y,c});
}
q.push(1);
dist[1]=0;
while(!q.empty())
{
x=q.front();
for(i=0;i<mat[x].size();i++)
if(dist[mat[x][i].y]> dist[x]+mat[x][i].c)
{
dist[mat[x][i].y]=dist[x]+mat[x][i].c;
q.push(mat[x][i].y);
}
q.pop();
}
g<<dist[n];
}