#include <bits/stdc++.h>
using namespace std;
int CeilIndex(std::vector<int>& v, int l, int r, int key) {
  while (r - l > 1) {
    int m = l + (r - l) / 2;
    if (v[m] >= key)
      r = m;
    else
      l = m;
  }
  return r;
}
int LIS(vector<int>& v) {
  if (v.size() == 0) return 0;
  vector<int> tail(v.size(), 0);
  int length = 1;
  tail[0] = v[0];
  for (size_t i = 1; i < v.size(); i++) {
    if (v[i] < tail[0])
      tail[0] = v[i];
    else if (v[i] > tail[length - 1])
      tail[length++] = v[i];
    else
      tail[CeilIndex(tail, -1, length - 1, v[i])] = v[i];
  }
  return length;
}
int main() {
  int k1, k2, k3;
  cin >> k1 >> k2 >> k3;
  vector<int> k1v(k1);
  vector<int> k2v(k2);
  vector<int> k3v(k3);
  for (int i = 0; i < k1; i++) cin >> k1v[i];
  for (int i = 0; i < k2; i++) cin >> k2v[i];
  for (int i = 0; i < k3; i++) cin >> k3v[i];
  sort(k1v.begin(), k1v.end());
  sort(k2v.begin(), k2v.end());
  sort(k3v.begin(), k3v.end());
  vector<int> v;
  for (int i = 0; i < k1v.size(); i++) v.push_back(k1v[i]);
  for (int i = 0; i < k2v.size(); i++) v.push_back(k2v[i]);
  for (int i = 0; i < k3v.size(); i++) v.push_back(k3v[i]);
  int n = LIS(v);
  cout << k1 + k2 + k3 - n;
  return 0;
}
