Pagini recente » Cod sursa (job #316976) | Cod sursa (job #2722206) | Cod sursa (job #292415) | Cod sursa (job #2309494) | Cod sursa (job #1614318)
#include<fstream>
using namespace std;
ifstream fin("dijkstra.in");
ofstream fout("dijkstra.out");
struct nod2
{
int vecin,cost;
nod2 *leg;
};
nod2 *LV[50002], *p;
int N,M,d[50002], coada[50001], pr, ul, nrcoada, i, x, y, c;
char viz[50002];
int main()
{
fin>>N>>M;
for(i=1;i<=M;i++)
{
fin>>x>>y>>c;
p=new nod2;
p->vecin=y;
p->cost=c;
p->leg=LV[x];
LV[x]=p;
}
for(i=1;i<=N;i++)
{
d[i]=1000000000;
viz[i]=0;
}
d[1]=0;
for(i=1;i<=N;i++)
{
for(p=LV[i];p;p=p->leg)
{
if(d[i]+p->cost<d[p->vecin])
{
d[p->vecin]=d[i]+p->cost;
}
}
}
for(i=2;i<=N;i++)
{
if(d[i]==1000000000)
{
d[i]=0;
}
fout<<d[i]<<" ";
}
fout.close();
fin.close();
return 0;
}