#include using namespace std; const int MAXN=30; int n,K; long double x[MAXN],y[MAXN],dis[MAXN][MAXN]; int main(){ cin >> n >> K; for (int i=0; i> x[i] >> y[i]; } x[n]=0; y[n]=0; for (int i=0; i<=n;i++) { for (int j=0; j<=n; j++) { dis[i][j]=sqrtl((x[i] - x[j]) * (x[i] - x[j]) + (y[i] - y[j]) * (y[i] - y[j])); } } vector>> dp(1<>(n+1, vector(K+1, 2e18))); dp[0][n][K]=0; for(int i=0; i<(1<> j) & 1)) {} for(int k=1; k<=K; k++){ for(int o=0; o> o) & 1) { continue; } dp[i|(1<