Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #define N 101
- using namespace std;
- int n,m,k,a[N][N],niv[N],p[N],x[N],niv1[N],p1[N],x1[N];
- void citire()
- {
- cin>>n>>m>>k;
- int x,y;
- for(int i=1;i<=m;++i)
- cin>>x>>y,a[x][y]=1;
- }
- void bf(int r)
- {
- int s=1,d=1;
- p[r]=1;
- x[1]=r;
- niv[r]=0;
- while(s<=d)
- {
- for(int i=1;i<=n;++i)
- if(!p[i]&&a[x[s]][i])
- ++d,x[d]=i,p[i]=1,niv[i]=niv[x[s]]+1;
- ++s;
- }
- }
- void bf1(int r)
- {
- int s=1,d=1;
- p1[r]=1;
- x1[1]=r;
- niv1[r]=0;
- while(s<=d)
- {
- for(int i=1;i<=n;++i)
- if(!p1[i]&&a[i][x1[s]])
- ++d,x1[d]=i,p1[i]=1,niv1[i]=niv1[x1[s]]+1;
- ++s;
- }
- }
- int main()
- {
- citire();
- bf(1);
- bf1(1);
- bool gasit=false;
- for(int i=1;i<=n;++i)
- if(niv[i]==k||niv1[i]==k)
- cout<<i<<' ',gasit=true;
- if(!gasit)
- cout<<"Nu exista";
- cout<<'\n';
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement