from collections import deque N, K, *AB = map(int, open(0).read().split()) if K > N: print(-1) quit() E = [[] for _ in range(N + 1)] for a, b in zip(*[iter(AB)] * 2): E[a].append(b) E[b].append(a) visited = [False] * (N + 1) res = 0 Q = deque([1]) while Q: v = Q.popleft() visited[v] = True K -= 1 if K == 0: break res += 1 for u in E[v]: if not visited[u]: Q.append(u) print(res)