#include #include using namespace std; using namespace atcoder; using ll=long long; int main() { int n,k; cin>>n>>k; vector x(n+1),y(n+1); for(int i=0;i>x[i+1]>>y[i+1]; } auto dist=[&](int i,int j)->double{ return sqrtf64((x[i]-x[j])*(x[i]-x[j])+(y[i]-y[j])*(y[i]-y[j])); }; vector>> dp(n+1,vector>(k+1,vector(1<double{ if(dp[v][m][s]!=-1)return dp[v][m][s]; else if((s+1)==1<0){ for(int i=1;i<=n;i++){ int u=i-1; if(s>>u&1)continue; res=min(res,rec(rec,i,m-1,s|(1<