#include <bits/stdc++.h>
#pragma GCC optimize("O3")
const double PI = acos(-1);
using namespace std;
const long long oo = 1LL << 60;
int n, k, p;
int A[1024], B[2 << 10];
long long dp[1 << 10][2 << 10];
int main() {
  scanf("%d %d %d", &n, &k, &p);
  for (int i = (1); i <= (n); i++) scanf("%d", A + i);
  for (int i = (1); i <= (k); i++) scanf("%d", B + i);
  sort(A + 1, A + n + 1);
  sort(B + 1, B + k + 1);
  for (int i = (0); i <= (n); i++) dp[i][0] = oo;
  for (int i = (0); i <= (k); i++) dp[0][i] = 0;
  for (int i = (1); i <= (n); i++)
    for (int j = (1); j <= (k); j++) {
      dp[i][j] = min(
          dp[i][j - 1],
          max(dp[i - 1][j - 1], abs(A[i] - B[j] + 0LL) + abs(B[j] - p + 0LL)));
    }
  cout << dp[n][k] << endl;
  return 0;
}
