#include <iostream>
#include <cstdio>
#include <algorithm>
#include <vector>
using namespace std;
 
int k;
 
int calc(vector<int> card){
    int ans = 0;
    for(int i = 0 ; i < card.size()-k+1 ; i++){
        int tmp = 1;
        for(int j = 0 ; j < k ; j++){
            tmp *= card[i+j];   
        }
        ans = max(tmp, ans);
    }
    return ans;
}
 
int main(){
    int n;
    while(cin >> n >> k){
      if(n == 0 && k == 0) break;
      vector<int> card(n);
      
      for(int i = 0 ; i < n ; i++) cin >> card[i];
      int ans = 0 , t = calc(card);
      for(int i = 0 ; i < n ; i++)
	for(int j = i+1 ; j < n ; j++){
	  swap(card[i],card[j]),ans=max(ans,calc(card)-t),swap(card[i],card[j]);
	}
      cout << ans << endl;
    }
    return 0;
}