#include <bits/stdc++.h>
using namespace std;
int main() {
  int n;
  scanf("%d", &n);
  int arr[n];
  for (int i = 0; i < n; i++) {
    scanf("%d", &arr[i]);
  }
  int ans = INT_MAX;
  for (int i = 1; i < n - 1; i++) {
    int x = arr[i], y = arr[i - 1];
    int z = max(x, y);
    if (z < ans) ans = z;
    y = arr[i + 1];
    z = max(x, y);
    if (z < ans) ans = z;
  }
  int result = min(min(arr[0], ans), min(arr[n - 1], ans));
  printf("%d", result);
  return 0;
}
