Cod sursa(job #1552017)

Utilizator c0mradec0mrade c0mrade Data 17 decembrie 2015 00:32:10
Problema BFS - Parcurgere in latime Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.46 kb
#include<fstream>
#include<vector>
#include<queue>
using namespace std;ifstream in("bfs.in");ofstream out("bfs.out");vector<int>v[100001];queue<int>q;int n,m,s,x,y,a[100001];void bfs(int root){a[root]=1;q.push(root);while(!q.empty()){int x=q.front();q.pop();for(int i=0;i<v[x].size();++i)if(a[v[x][i]]==0){a[v[x][i]]=a[x]+1;q.push(v[x][i]);}}}int main(){in>>n>>m>>s;for(int i=0;i<m;++i){in>>x>>y;v[x].push_back(y);}bfs(s);for(int i=1;i<=n;++i)out<<a[i]-1<<' ';return 0;}