#include <bits/stdc++.h>
using namespace std;
long long c[3001];
long long s[3001];
int main() {
  long long n;
  scanf("%lld", &n);
  map<long long, long long> ma;
  for (int i = 0; i < n; i++) {
    scanf("%lld", &s[i]);
    ma[i] = LONG_LONG_MAX;
  }
  for (int i = 0; i < n; i++) scanf("%lld", &c[i]);
  for (int i = 0; i < n; i++) {
    for (int j = i + 1; j < n; j++)
      if (s[i] < s[j]) ma[i] = min(ma[i], c[j]);
  }
  long long ans = LONG_LONG_MAX;
  for (int i = 0; i < n; i++) {
    for (int j = i + 1; j < n; j++) {
      if (s[i] < s[j] && ma[j] != LONG_LONG_MAX) {
        ans = min(ans, c[i] + c[j] + ma[j]);
      }
    }
  }
  if (ans != LONG_LONG_MAX)
    printf("%lld", ans);
  else
    printf("-1");
  return 0;
}
