#include using namespace std; #pragma GCC optimize("O3") #pragma GCC optimize("unroll-loops") #define int long long using ld=long double; signed main(){ int N,K;cin>>N>>K; vector X(N+1),Y(N+1); for(int i=0;i>X[i]>>Y[i]; } vector> d(N+1,vector(N+1)); for(int i=0;i<=N;i++){ for(int j=0;j<=N;j++){ d[i][j]=hypotl(X[i]-X[j],Y[i]-Y[j]); } } X[N]=0,Y[N]=0; vector cost(1< v={N}; for(int i=0;i>i&1)v.push_back(i); } int n=v.size(); vector> dp(1<(n,1e18)); dp[0][0]=0; for(int s=0;s<(1<>k&1)continue; dp[s|(1< dp(1<