#include <bits/stdc++.h>
using namespace std;
long long int dp[2][200007];
int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(0);
  long long int n, c;
  cin >> n >> c;
  long long int p[n], s[n];
  for (int i = 0; i < n; i++) cin >> p[i];
  for (int i = 0; i < n; i++) cin >> s[i];
  for (int vert = n - 1; vert >= 0; vert--) {
    for (int partOfB = 0; partOfB <= vert; partOfB++) {
      long long int& res = dp[vert % 2][partOfB];
      res = min(p[vert] + partOfB * c + dp[(vert + 1) % 2][partOfB],
                s[vert] + dp[(vert + 1) % 2][partOfB + 1]);
    }
  }
  cout << dp[0][0];
  return 0;
}
