#include <bits/stdc++.h>
using namespace std;
#define INF 0x3f3f3f3f
vector<double> v[10010];
int n, k;
double average[10010];
int main() {
cin >> n >> k;
for(int i = 1; i <= n; i++) {
cin >> average[i];
v[i].push_back(average[i]);
}
double minn;
int id1, id2;
for(int t = 1; t <= n - k; t++) {
minn = INF;
for(int i = 1; i <= n; i++) {
if(v[i].size() == 0) continue;
for(int j = i + 1; j <= n; j++) {
if(v[j].size() == 0) continue;
if(fabs(average[i] - average[j]) < minn) {
minn = fabs(average[i] - average[j]);
id1 = i;
id2 = j;
}
}
}
average[id1] = (1.0 * average[id1] * v[id1].size() + average[id2] * v[id2].size()) / (v[id1].size() + v[id2].size());
for(int i = 0; i < v[id2].size(); i++) {
v[id1].push_back(v[id2][i]);
}
v[id2].clear();
}
int i = 0;
for(int j = 1; j <= n; j++) {
if(v[j].size() == 0) continue;
cout << ++i << ": ";
for(int k = 0; k < v[j].size(); k++) cout << v[j][k] << " ";
cout << endl;
}
return 0;
}
/*
8 2
1 2 3 4 5 6 7 8
7 3
5 1 3 6 7 5 9
*/