#include <bits/stdc++.h>
using namespace std;
const int N = 5e3 + 9;
long long n, s, e, x[N], a[N], b[N], c[N], d[N];
long long dist[N][N];
int main() {
  cin >> n >> s >> e;
  for (int i = 1; i <= n; i++) cin >> x[i];
  for (int i = 1; i <= n; i++) cin >> a[i];
  for (int i = 1; i <= n; i++) cin >> b[i];
  for (int i = 1; i <= n; i++) cin >> c[i];
  for (int i = 1; i <= n; i++) cin >> d[i];
  for (int i = 1; i <= n; i++)
    for (int j = 1; j <= n; j++)
      if (j < i)
        dist[i][j] = abs(x[i] - x[j]) + c[i] + b[j];
      else if (j > i)
        dist[i][j] = abs(x[i] - x[j]) + d[i] + a[j];
      else
        dist[i][j] = 0;
  vector<long long> v({s, e});
  for (int i = 1; i <= n; i++) {
    if (i != s && i != e) {
      long long k = 0, m = 4e9;
      for (auto j = 0u; j < v.size() - 1; j++) {
        long long dist2 =
            dist[v[j]][i] + dist[i][v[j + 1]] - dist[v[j]][v[j + 1]];
        if (dist2 < m) k = j + 1, m = dist2;
      }
      v.insert(v.begin() + k, i);
    }
  }
  long long ans = 0;
  for (int i = 0; i < n - 1; i++) ans += dist[v[i]][v[i + 1]];
  cout << ans << endl;
  return 0;
}
