import collections def main(): n, k = map(int, input().split()) e = [list(map(int, input().split())) for _ in range(n - 1)] ans = solve(n, k, e) print(ans) def solve(n, k, e): if n < k: return -1 g = [[] for _ in range(n)] for (x, y) in e: x, y = x - 1, y - 1 g[x].append(y) g[y].append(x) arrived = [False for _ in range(n)] q = collections.deque() q.append(0) coins = 0 ans = -1 while len(q): v = q.popleft() if not arrived[v]: arrived[v] = True coins += 1 ans += 1 if coins == k: break for i in g[v]: q.append(i) else: return -1 return ans if __name__ == '__main__': main()