#include <bits/stdc++.h>
int kCard_MaxValue(int a[], int n, int k) {
  int res = -1, sum, i, j;
  for (i = 0; i < n - k + 1; i++) {
    sum = 1;
    for (j = 0; j < k; j++) {
      sum = sum * a[i + j];
    }
    if (sum > res) {
      res = sum;
    }
  }
  return res;
}
void swap(int *a, int *b) {
  int tmp;
  tmp = *a;
  *a = *b;
  *b = tmp;
}
int main(void) {
  int i, j, n, k, ckd, ck, a[100], ans = -1;
  scanf("%d%d", &n, &k);
  for (i = 0; i < n; i++) {
    scanf("%d", &a[i]);
  }
  ckd = kCard_MaxValue(a, n, k);
  for (i = 0; i < n; i++) {
    for (j = 0; j < n; j++) {
      swap(&a[i], &a[j]);
      ck = kCard_MaxValue(a, n, k);
      if (ck - ckd > ans) {
        ans = ck - ckd;
      }
      swap(&a[i], &a[j]);
    }
  }
  if (ans == -1) {
    printf("NO GAME\n");
  } else {
    printf("%d\n", ans);
  }
  return 0;
}
