import
java.util.*;
@SuppressWarnings
(
"unchecked"
)
class
GFG{
public
static
class
arr
{
public
int
from, to;
public
arr(
int
from,
int
to)
{
this
.from = from;
this
.to = to;
}
};
static
void
dfs(
int
k,
int
node,
int
parent, ArrayList []tree)
{
if
(k <
0
)
return
;
System.out.print(node +
" "
);
ArrayList tmp = (ArrayList)tree[node];
for
(
int
i : (ArrayList<Integer>)tmp)
{
if
(i != parent)
{
dfs(k -
1
, i, node, tree);
}
}
}
static
void
print_under_dis_K(arr []graph,
int
node,
int
k,
int
v,
int
e)
{
ArrayList []tree =
new
ArrayList[v +
1
];
for
(
int
i =
0
; i < v +
1
; i++)
{
tree[i] =
new
ArrayList();
}
for
(
int
i =
0
; i < e; i++)
{
int
from = graph[i].from;
int
to = graph[i].to;
tree[from].add(to);
tree[to].add(from);
}
dfs(k, node, -
1
, tree);
}
public
static
void
main(String[] args)
{
int
v =
7
, e =
6
;
arr []graph = {
new
arr(
2
,
1
),
new
arr(
2
,
5
),
new
arr(
5
,
4
),
new
arr(
5
,
7
),
new
arr(
4
,
3
),
new
arr(
7
,
6
) };
int
node =
4
, k =
2
;
print_under_dis_K(graph, node, k, v, e);
}
}