#include <bits/stdc++.h>
using namespace std;
int main() {
  int n, k, i;
  cin >> n >> k;
  long long a[n];
  for (i = 0; i < n; i++) {
    cin >> a[i];
  }
  if (k == 1) {
    sort(a, a + n);
    cout << a[0] << endl;
  } else if (k == 2) {
    long long b[n];
    memcpy(b, a, n);
    sort(b, b + n);
    if (a[0] == b[n - 1] || a[n - 1] == b[n - 1]) {
      cout << a[n - 1] << endl;
    } else {
      long long min1 = a[0], min2 = a[n - 1], indx1, indx2;
      if (min1 > min2) {
        cout << min1 << endl;
      } else
        cout << min2 << endl;
    }
  } else {
    sort(a, a + n);
    cout << a[n - 1] << endl;
  }
  return 0;
}
