Pagini recente » Cod sursa (job #371933) | Cod sursa (job #187181) | Cod sursa (job #487107) | Cod sursa (job #2485103) | Cod sursa (job #2503629)
//#include <iostream>
#include <vector>
#include <fstream>
using namespace std;
ofstream cout("bfs.out");
ifstream cin("bfs.in");
vector<int> v[100005];
int fol[100005];
void bfs(int nod)
{
int i;
for (i=0; i<v[nod].size(); i++)
{
if (fol[v[nod][i]]==-1)
{fol[v[nod][i]]=fol[nod]+1;
bfs(v[nod][i]);}
}
}
int main()
{
int n, i,m,a,b, s,cnt=0;
cin>>n>>m>>s;
for (i=1; i<=n; i++)
fol[i]=-1;
fol[s]=0;
for(i=1;i<=m;i++){
cin>>a>>b;
v[a].push_back(b);
}
bfs(s);
for (i=1; i<=n; i++)
cout << fol[i] << " ";
return 0;
}