Pagini recente » Cod sursa (job #2792861) | Cod sursa (job #1365195) | Cod sursa (job #695449) | Cod sursa (job #2560998) | Cod sursa (job #1312594)
#include <fstream>
#include <vector>
using namespace std;
int N,M,x,a,b,t,d[100010],Q[100010];
vector <int> v[100010];
ifstream f("bfs.in");
ofstream g("bfs.out");
int main()
{
f>>N>>M>>x;
for(;M;M--)
{
f>>a>>b;
v[a].push_back(b);
}
d[x]=1;
t=b=1;Q[t]=x;
for(;b<=t;b++)
{
x=Q[b];
for(auto i:v[x])
if(!d[i])
{
d[i]=d[x]+1;
Q[++t]=i;
}
}
for(int i=1;i<=N;i++)
g<<d[i]-1<<" ";
return 0;
}