///Link: https://l...content-available-to-author-only...s.com/group/pruqgqgzZe/contest/725905
///Author: NHB_0xCKT
#include <bits/stdc++.h>
#define ll long long
#define oo (ll)1e18
#define ioo (int)1e9
#define pii pair<int,int>
#define F first
#define S second
#define NAME ""
using namespace std;
const int MM = 1e5+5;
vector<int>adj[MM], pre[MM], suf[MM];
vector<pair<int,int>>vec[MM];
int n,k,f[MM],ans;
void dfs(int u, int par){
int res = 0;
for(auto v : adj[u]){
if(v == par) continue;
dfs(v,u);
vec[u].push_back({f[v],v});
}
sort(vec[u].begin(),vec[u].end(),greater<pair<int,int>>());
for(int i = 0;i<(int)vec[u].size();i++) res = max(res,vec[u][i].F + i/k + 1);
f[u] = res;
}
void dfs_reroot(int u, int par){
sort(vec[u].begin(),vec[u].end(),greater<pair<int,int>>());
int res = 0;
for(int i = 0;i<(int)vec[u].size();i++) res = max(res,vec[u][i].F + i/k + 1);
ans = min(ans,res);
int cntma = 0;
for(int i = 0;i<(int)vec[u].size();i++){
cntma = max(cntma,vec[u][i].F + i/k + 1);
pre[u].push_back(cntma);
}
cntma = 0;
for(int i = vec[u].size()-1;i>=0;i--){
cntma = max(cntma,vec[u][i].F + (i-1)/k + 1);
suf[u].push_back(cntma);
}
reverse(suf[u].begin(),suf[u].end());
for(int i = 0;i<(int)vec[u].size();i++){
if(vec[u][i].S == par) continue;
int newu = 0;
if(i>0) newu = max(newu,pre[u][i-1]);
if(i<(int)vec[u].size() - 1) newu = max(newu,suf[u][i+1]);
vec[vec[u][i].S].push_back({newu,u});
dfs_reroot(vec[u][i].S,u);
}
}
int main(){
// freopen(NAME".inp","r",stdin);
// freopen(NAME".out","w",stdout);
ios::sync_with_stdio(0);
cin.tie(0);
cin>>n>>k;
for(int i = 1;i<n;i++){
int u,v;
cin>>u>>v;
adj[u].push_back(v);
adj[v].push_back(u);
}
ans = n+1;
dfs(1,0);
dfs_reroot(1,0);
cout<<ans<<"\n";
return 0;
}
Ly8vTGluazogaHR0cHM6Ly9sLi4uY29udGVudC1hdmFpbGFibGUtdG8tYXV0aG9yLW9ubHkuLi5zLmNvbS9ncm91cC9wcnVxZ3FnelplL2NvbnRlc3QvNzI1OTA1Ci8vL0F1dGhvcjogTkhCXzB4Q0tUCiNpbmNsdWRlIDxiaXRzL3N0ZGMrKy5oPgojZGVmaW5lIGxsIGxvbmcgbG9uZwojZGVmaW5lIG9vIChsbCkxZTE4CiNkZWZpbmUgaW9vIChpbnQpMWU5CiNkZWZpbmUgcGlpIHBhaXI8aW50LGludD4KI2RlZmluZSBGIGZpcnN0CiNkZWZpbmUgUyBzZWNvbmQKI2RlZmluZSBOQU1FICIiCnVzaW5nIG5hbWVzcGFjZSBzdGQ7CmNvbnN0IGludCBNTSA9IDFlNSs1Owp2ZWN0b3I8aW50PmFkaltNTV0sIHByZVtNTV0sIHN1ZltNTV07CnZlY3RvcjxwYWlyPGludCxpbnQ+PnZlY1tNTV07CmludCBuLGssZltNTV0sYW5zOwp2b2lkIGRmcyhpbnQgdSwgaW50IHBhcil7CiAgICBpbnQgcmVzID0gMDsKICAgIGZvcihhdXRvIHYgOiBhZGpbdV0pewogICAgICAgIGlmKHYgPT0gcGFyKSBjb250aW51ZTsKICAgICAgICBkZnModix1KTsKICAgICAgICB2ZWNbdV0ucHVzaF9iYWNrKHtmW3ZdLHZ9KTsKICAgIH0KICAgIHNvcnQodmVjW3VdLmJlZ2luKCksdmVjW3VdLmVuZCgpLGdyZWF0ZXI8cGFpcjxpbnQsaW50Pj4oKSk7CiAgICBmb3IoaW50IGkgPSAwO2k8KGludCl2ZWNbdV0uc2l6ZSgpO2krKykgcmVzID0gbWF4KHJlcyx2ZWNbdV1baV0uRiArIGkvayArIDEpOwogICAgZlt1XSA9IHJlczsKfQp2b2lkIGRmc19yZXJvb3QoaW50IHUsIGludCBwYXIpewogICAgc29ydCh2ZWNbdV0uYmVnaW4oKSx2ZWNbdV0uZW5kKCksZ3JlYXRlcjxwYWlyPGludCxpbnQ+PigpKTsKICAgIGludCByZXMgPSAwOwogICAgZm9yKGludCBpID0gMDtpPChpbnQpdmVjW3VdLnNpemUoKTtpKyspIHJlcyA9IG1heChyZXMsdmVjW3VdW2ldLkYgKyBpL2sgKyAxKTsKICAgIGFucyA9IG1pbihhbnMscmVzKTsKICAgIGludCBjbnRtYSA9IDA7CiAgICBmb3IoaW50IGkgPSAwO2k8KGludCl2ZWNbdV0uc2l6ZSgpO2krKyl7CiAgICAgICAgY250bWEgPSBtYXgoY250bWEsdmVjW3VdW2ldLkYgKyBpL2sgKyAxKTsKICAgICAgICBwcmVbdV0ucHVzaF9iYWNrKGNudG1hKTsKICAgIH0KICAgIGNudG1hID0gMDsKICAgIGZvcihpbnQgaSA9IHZlY1t1XS5zaXplKCktMTtpPj0wO2ktLSl7CiAgICAgICAgY250bWEgPSBtYXgoY250bWEsdmVjW3VdW2ldLkYgKyAoaS0xKS9rICsgMSk7CiAgICAgICAgc3VmW3VdLnB1c2hfYmFjayhjbnRtYSk7CiAgICB9CiAgICByZXZlcnNlKHN1Zlt1XS5iZWdpbigpLHN1Zlt1XS5lbmQoKSk7CiAgICBmb3IoaW50IGkgPSAwO2k8KGludCl2ZWNbdV0uc2l6ZSgpO2krKyl7CiAgICAgICAgaWYodmVjW3VdW2ldLlMgPT0gcGFyKSBjb250aW51ZTsKICAgICAgICBpbnQgbmV3dSA9IDA7CiAgICAgICAgaWYoaT4wKSBuZXd1ID0gbWF4KG5ld3UscHJlW3VdW2ktMV0pOwogICAgICAgIGlmKGk8KGludCl2ZWNbdV0uc2l6ZSgpIC0gMSkgbmV3dSA9IG1heChuZXd1LHN1Zlt1XVtpKzFdKTsKICAgICAgICB2ZWNbdmVjW3VdW2ldLlNdLnB1c2hfYmFjayh7bmV3dSx1fSk7CiAgICAgICAgZGZzX3Jlcm9vdCh2ZWNbdV1baV0uUyx1KTsKICAgIH0KfQppbnQgbWFpbigpewovLyAgICBmcmVvcGVuKE5BTUUiLmlucCIsInIiLHN0ZGluKTsKLy8gICAgZnJlb3BlbihOQU1FIi5vdXQiLCJ3IixzdGRvdXQpOwogICAgaW9zOjpzeW5jX3dpdGhfc3RkaW8oMCk7CiAgICBjaW4udGllKDApOwogICAgY2luPj5uPj5rOwogICAgZm9yKGludCBpID0gMTtpPG47aSsrKXsKICAgICAgICBpbnQgdSx2OwogICAgICAgIGNpbj4+dT4+djsKICAgICAgICBhZGpbdV0ucHVzaF9iYWNrKHYpOwogICAgICAgIGFkalt2XS5wdXNoX2JhY2sodSk7CiAgICB9CiAgICBhbnMgPSBuKzE7CiAgICBkZnMoMSwwKTsKICAgIGRmc19yZXJvb3QoMSwwKTsKICAgIGNvdXQ8PGFuczw8IlxuIjsKICAgIHJldHVybiAwOwp9