← Home
#include<bits/stdc++.h>
using namespace std;
const int N=1e5+99;
set<pair<int,int> >d[N],s;
int main(){
	int n,k,x,y,z;
	scanf("%d%d",&n,&k);
	for(int i=1;i<n;++i) {
		scanf("%d%d%d",&x,&y,&z);
		d[x].insert(make_pair(y,z));
		d[y].insert(make_pair(x,z));
	}
	for(int i=1;i<=n;++i) if(d[i].size()==1)
	s.insert(make_pair((*d[i].begin()).second,i));
	int ans=0;
	while(n>k||s.size()>2){
		ans=(*s.begin()).first;
		int now=(*s.begin()).second;
		s.erase(s.begin());
		int p=(*d[now].begin()).first;
		d[p].erase(d[p].lower_bound(make_pair(now,0)));
		--n;
		if(d[p].size()==1) s.insert(make_pair(ans+(*d[p].begin()).second,p));
	}
	printf("%d\n",ans);
}