Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // DEPTH LIMIT SEARCH
- /*
- 15 14
- 1 2
- 1 3
- 2 4
- 2 5
- 3 6
- 3 7
- 4 8
- 4 9
- 5 10
- 5 11
- 6 12
- 6 13
- 7 14
- 7 15
- 1
- 12
- 3
- */
- #include<bits/stdc++.h>
- using namespace std;
- int level , goal;
- vector < int > G[ 10005 ];
- bool visited[ 10005 ];
- void _DFS( int src , int l )
- {
- if( visited[ goal ] == 1 )
- return;
- cout << src << " -> ";
- visited[ src ] = 1;
- for( int i = 0; i < G[ src ].size(); i++ )
- {
- if( !visited[ G[ src ][ i ] ] && l + 1 <= level )
- {
- _DFS( G[ src ][ i ] , l + 1 );
- }
- }
- }
- int main()
- {
- freopen("input.txt" , "r" , stdin );
- int node , edge;
- cin >> node >> edge;
- for( int i = 0; i < edge; i++ )
- {
- int u , v;
- cin >> u >> v;
- G[ u ].push_back( v );
- G[ v ].push_back( u );
- }
- int src;
- cin >> src;
- cin >> goal >> level;
- _DFS( src , 0 );
- cout << "\n";
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement