#include <bits/stdc++.h>
using namespace std;
vector<int> ans[2500];
bool cmp(int a, int b) { return a > b; }
void print(int n) {
  int i;
  for (i = 0; i < ans[n].size(); i++) printf(" %d", ans[n][i]);
  printf("\n");
}
int a[60];
int main() {
  int N, K, i, j, k, cnt;
  cin >> N >> K;
  for (i = 0; i < N; i++) cin >> a[i];
  sort(a, a + N, cmp);
  cnt = 0;
  for (i = 0; i < N; i++) {
    for (j = 0; j < N - i; j++) {
      for (k = 0; k < i; k++) {
        ans[cnt + j].push_back(a[k]);
      }
    }
    for (j = 0; j < N - i; j++) {
      ans[cnt + j].push_back(a[N - j - 1]);
    }
    cnt += N - i;
  }
  for (i = 0; i < K; i++) {
    printf("%d", ans[i].size());
    print(i);
  }
  return 0;
}
