Cod sursa(job #2779603)
Utilizator | Data | 4 octombrie 2021 13:50:43 | |
---|---|---|---|
Problema | BFS - Parcurgere in latime | Scor | 100 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva educationala | Marime | 0.43 kb |
#include<bits/stdc++.h>
using namespace std;
ifstream f("bfs.in");
ofstream g("bfs.out");
vector<int> L[100001];
int v[100001],c[100001],n,p,u,s,x,y,m;
int main()
{
f>>n>>m>>s;
while(m--)
f>>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)
g<<v[p]-1<<' ';
return 0;
}