import sys, math sys.setrecursionlimit(10**5+1) def input(): return sys.stdin.readline()[:-1] def dfs(graph,ima,dist): for tsugi in graph[ima]: if dist[tsugi] > 10*5: dist[tsugi] = dist[ima]+1 dfs(graph,tsugi,dist) def main(): N, K = map(int,input().split()) G = [[] for k in range(N)] for k in range(N-1): a, b = map(int,input().split()) G[a-1].append(b-1) G[b-1].append(a-1) if N < K: print(-1) exit(0) D = [10*5+1 for k in range(N)] D[0] = 0 dfs(G,0,D) D = sorted(D) ans = 0 for k in range(K): ans += D[k] print(ans) if __name__ == '__main__': main()