Pagini recente » Cod sursa (job #2895326) | Cod sursa (job #280281) | Cod sursa (job #2895644) | Cod sursa (job #1367682) | Cod sursa (job #2779571)
#include<bits/stdc++.h>
using namespace std;
vector<int> L[100001];
int v[100001],c[100001],n,p,u,s,x,y,m;
int main()
{
freopen("bfs.in","r",stdin),freopen("bfs.out","w",stdout),scanf("%d%d%d",&n,&m,&s);
while(m--)
scanf("%d%d",&x,&y),L[x].push_back(y);
for(v[s]=p=u=1,c[1]=s;p<=u;++p)
for(auto a:L[c[p]])
if(!v[a])
c[++u]=a,v[a]=v[c[p]]+1;
for(p=1;p<=n;++p)
printf("%d ",v[p]-1);
return 0;
}