#include <bits/stdc++.h>
using namespace std;
int main() {
  long long t = 1;
  while (t--) {
    long long n, a[3000], b[3000], c[3000], ao, bo, i, j, k;
    cin >> n >> ao >> bo;
    for (i = 0; i < n; i++) cin >> a[i];
    for (i = 0; i < n; i++) cin >> b[i];
    for (i = 0; i < n; i++) c[i] = abs(a[i] - b[i]);
    sort(c, c + n);
    long long ele = 0;
    k = ao + bo;
    long long count = 0, val = 0;
    for (i = n - 1; i >= 0 && k > 0; i--) {
      count = 0;
      j = i;
      while (c[i] == c[j] && j >= 0) {
        j--;
        count++;
      }
      if (j >= 0) {
        long long gap = c[i] - c[j];
        ele = n - j - 1;
        if (k >= ele * gap) {
          k -= ele * gap;
          val = c[i] - gap;
          i = j + 1;
        } else {
          long long temp = k / ele;
          val = c[i] - temp;
          ;
          k -= ele * temp;
          break;
        }
      } else {
        long long gap = c[i];
        ele = n;
        if (k >= ele * gap) {
          k -= ele * gap;
          val = c[i] - gap;
        } else {
          long long temp = k / ele;
          val = c[i] - temp;
          ;
          k -= ele * temp;
          break;
        }
        break;
      }
    }
    long long u = n;
    for (i = n - 1; i > n - 1 - ele; i--) {
      c[i] = val;
    }
    if (ele == n) {
      if (val == 0) {
        if (k % 2 != 0) c[0] = 1;
      } else
        for (i = n - 1; k > 0; i--) {
          c[i]--;
          k--;
        }
    } else
      for (i = n - 1; k > 0; i--) {
        c[i]--;
        k--;
      }
    long long sol = 0;
    for (i = 0; i < u; i++) {
      sol += c[i] * c[i];
    }
    cout << sol << endl;
    ;
  }
  return 0;
}
