Cod sursa(job #991562)

Utilizator gapdanPopescu George gapdan Data 30 august 2013 19:55:31
Problema BFS - Parcurgere in latime Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.98 kb
#include<fstream>
#include<bitset>
using namespace std;
bitset <1001>s;
fstream f("df.in",ios::in);
fstream g("df.out",ios::out);
int n;
struct art
{
     int x;
    art *urm;
};
art *L[50];
void citire()
{
    int i,j;
    art  *p,*q;
    while(f>>i>>j)
    {
        p=new art;
        p->x=j;
        p->urm=L[i];
        L[i]=p;
        q=new art;
        q->x=i;
        q->urm=L[j];
        L[j]=q;
    }
}
int v[100],st[100];
int main()
{
    art *p;
    int t=0,k=1;
    citire();
    st[k]=1;
    do
    {
        if (s[st[k]]==0)
        {
            ++t;
            v[t]=st[k];
            s[st[k]]=1;
            g<<v[t]<<' ';
            --k;
            p=L[v[t]];
            while (p!=NULL)
            {
                if (s[p->x]==0)
                {
                    ++k;
                    st[k]=p->x;
                }
                p=p->urm;
            }
        }
        else --k;
    }
while (k>0);
return 0;
}