Pagini recente » Cod sursa (job #1176475) | Cod sursa (job #153155) | Cod sursa (job #168686) | Cod sursa (job #1447503) | Cod sursa (job #251831)
Cod sursa(job #251831)
#include <stdio.h>
#include <string.h>
#include <vector>
using namespace std;
FILE *f=fopen("bfs.in","r"),*g=fopen("bfs.out","w");
#define maxn 100010
vector <int> a[maxn];
int n,m,nod,s[maxn],cost[maxn],gg[maxn];
void bfs(int nod){
int i,j,l;
memset(cost,-1,sizeof(nod));
l=1;
s[l]=nod;
cost[nod]=0;
for(i=1;i<=l;i++)
for(j=0;j<gg[s[i]];j++)
if(cost[a[s[i]][j]]==-1){
s[++l]=a[s[i]][j];
cost[a[s[i]][j]]=cost[s[i]]+1;
}
}
int main(){
int i,x,y;
fscanf(f,"%d %d %d",&n,&m,&nod);
for(i=1;i<=m;i++){
fscanf(f,"%d %d",&x,&y);
a[x].push_back(y);
}
for(i=1;i<=n;i++){
gg[i]=a[i].size();
}
for(i=1;i<=n;i++)
fprintf(g,"%d ",cost[i]);
fclose(f);
fclose(g);
return 0;
}