Witam
Jestem początkującym w c++ i mam tak owy problem. Zrobiłem program do sprawdzania spójności grafów, mój problem jest taki że program zatrzymuje się w funkcji i nie chce ruszyć dalej.
Ktoś pomoże.
Kod:
#include <iostream>
#include <vector>
#include <queue>
using namespace std;
vector <int> doBFS[1000005];
long long int kk[1000005];
queue <int> BFS2;
void BFS(int v)
{
kk[v]=1;
for(int i=0; i<doBFS[v].size()+1; i++)
{
BFS2.push(doBFS[v][i]);
}
BFS2.pop();
if(0<BFS2.size())
{
BFS(BFS2.front());
}
}
int main()
{
BFS2.push(1);
int b;
cin >>b;
for(int uu=1; uu<b+1; uu++)
{
int x,y;
cin >>x>>y;
int n,m;
for(int q=1; q<y+1; q++)
{
cin >>n>>m;
doBFS[n].push_back(m);
}
BFS(1);
int xx;
xx=0;
for(int q=1; q<x+1; q++)
{
if(kk[q]==1)
{
xx=xx+1;
kk[q]=0;
}
}
if(xx==x)
{
cout <<"TAK"<<"\n";
}
else
{
cout <<"NIE"<<"\n";
}
for(int pp=1; pp<x+1; pp++)
{
doBFS[pp].clear();
}
}

return 0;

}
Wszystkim z góry dziękuję za odpowiedzi