Cod sursa(job #634823)

Utilizator Tucu94Andrei Tuculanu Tucu94 Data 17 noiembrie 2011 13:50:46
Problema BFS - Parcurgere in latime Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.64 kb
#include<fstream>
#include<vector>
using namespace std;
int T[2][100001],S[1000001];
int a,b,N,M,V[100001],r,X,Y,i,p,sf,ic,C[1000001];
ifstream f("graf.in");
ofstream g("graf.out");
void citire(){
	f>>N>>M>>X>>Y;
	int i,k=0,a,b;
	for(i=1;i<=M;i++)
	{	
		f>>a>>b;
		k++;
		T[0][k]=b;
		T[1][k]=S[a];
		S[a]=k;
		k++;
		T[0][k]=a;
		T[1][k]=S[b];
		S[b]=k;
	}

}
void BFS(int n)
{
	C[ic]=n;
	while(ic<=sf)
	{
		p=S[C[ic]];
		if(T[0][p]!=Y){
			while(p){
				sf++;
				C[sf]=T[0][p];
				V[T[0][p]]++;
				p=T[1][p];
			}
			ic++;
		}
		else {
			
			return ;
		}
	}		
}
int main ()
{
	citire();
	ic=sf=1;
	BFS(X);
	
	g<<r;

}