Cod sursa(job #530137)

Utilizator mening12001Andrei Geogescu mening12001 Data 6 februarie 2011 22:41:19
Problema BFS - Parcurgere in latime Scor 10
Compilator cpp Status done
Runda Arhiva educationala Marime 0.52 kb
#include<iostream.h>
#include<fstream.h>
int a[10000][10000];
int main()
{int n,m,s,x,y,k,j,i;
	ifstream f("bfs.in");
ofstream h("bfs.out");
f>>n>>m>>s;
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
	a[i][j]=10000;

for(i=1;i<=m;i++)
{	f>>x>>y;
a[x][y]=1;}



for(k=1;k<=n;k++)
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)	
	if(a[i][j]>a[i][k]+a[k][j]&&i!=k&&j!=k)
	a[i][j]=a[i][k]+a[k][j];
for(j=1;j<=n;j++)
{if(s==j&&a[s][s]==1)
	h<<0<<" ";
else
if(a[s][j]==10000)
	h<<-1<<" ";
else
	h<<a[s][j]<<" ";}

return 0;}