Pagini recente » Cod sursa (job #639373) | Cod sursa (job #850418) | Cod sursa (job #793715) | Cod sursa (job #3163332) | Cod sursa (job #2300284)
#include <fstream>
#include <deque>
#define MAXX 100000
using namespace std;
ifstream f("date.in");
ofstream g("date.out");
struct pct
{
deque<unsigned short int> vec;
deque<unsigned int> l;
};
int main()
{
int i,n,m;
f>>n>>m;
pct v[n+2];
long val[n+2];
for(i=1;i<=m;i++)
{
int a,b,c;
f>>a>>b>>c;
v[a].vec.push_back(b);
v[a].l.push_back(c);
v[b].vec.push_back(a);
v[b].l.push_back(c);
}
for(i=1;i<=n;i++)
val[i]=MAXX;
val[1]=0;
deque<int> que;
que.push_back(1);
while(!que.empty())
{
int x=que.front();
for(int j=0;j<v[x].vec.size();j++)
{
if(val[v[x].vec[j]]>val[x]+v[x].l[j])
{
val[v[x].vec[j]]=val[x]+v[x].l[j];
que.push_back(v[x].vec[j]);
}
}
que.pop_front();
}
for(int j=2;j<=n;j++)
g<<val[j]<<" ";
return 0;
}