#include <bits/stdc++.h>

using namespace std;

struct P{double l,a,b;};

int bitsum(int n){
	int ans = 0;
	for(int i = 1; i < 2*n; i <<= 1){
		if((i & n) == i)ans++;
	}
	return ans;
}

double calc(vector<P> &c, int n){
	vector<P> cc;
	double ans = 0;
	for(int i = 0; i < c.size(); i++){
		if(((1 << i) & n) == (1 << i)){
			//cerr << i << endl;
			cc.push_back(c[i]);
		}
	}
	for(int i = 1; i < cc.size(); i++){
		for(int j = 0; j < i; j++){
			ans += pow(cc[i].l - cc[j].l, 2) + pow(cc[i].a - cc[j].a, 2) \
				+ pow(cc[i].b - cc[j].b, 2);
		}
	}
	return ans;
}

int main(){
	int n,m; cin >> n >> m;
	vector<P> c(n);
	for(int i = 0; i < n; i++){
		cin >> c[i].l >> c[i].a >> c[i].b;
	}
	double ans = 0;

	for(int i = 1; i < (1 << n); i++){
		if(bitsum(i) == m){
			//cerr << i  << "a" << endl;
			ans = max(ans, calc(c,i));
		}
	}
	printf("%f\n",ans);
	return 0;
}