Pagini recente » Cod sursa (job #1808778) | Cod sursa (job #1359197) | Cod sursa (job #483883) | Cod sursa (job #860730) | Cod sursa (job #2693150)
#include <iostream>
#include <fstream>
#include <vector>
using namespace std;
struct muchie
{
int x;
int y;
int val;
};
int d[50005];
vector <muchie> graph;
int main()
{
ifstream f("bellmanford.in");
ofstream g("bellmanford.out");
int n, m;
f>>n>>m;
for(int i=0; i<m; i++)
{
muchie a;
f>>a.x>>a.y>>a.val;
graph.push_back(a);
}
for(int i=2; i<=n; i++)
d[i] = 10001;
d[1] = 0;
for(int i=0; i<n-1; i++)
for(auto j : graph)
if(d[j.x] + j.val < d[j.y])
d[j.y] = d[j.x] + j.val;
for(auto j : graph)
if(d[j.x] + j.val < d[j.y])
{
g<<'Ciclu negativ';
return 0;
}
for(int i=2; i<=n; i++)
g<<d[i]<<" ";
return 0;
}