#include <bits/stdc++.h>
using namespace std;
using ll = long long int;
int main() {
  int n, d, b;
  cin >> n >> d >> b;
  vector<int> a(n + 1, 0);
  int s = 0;
  int h = (b * n) / 2;
  for (int i = 1; i <= n; ++i) {
    int u;
    cin >> u;
    int l = min(u, max(0, h - s));
    int r = u - l;
    int il = (i + d) / (1 + d);
    int ir = n + 1 - (n + 1 - i + d) / (1 + d);
    a[il] += l;
    a[ir] += r;
    s += u;
  }
  int x1 = 0;
  for (int i = 1; i <= n / 2; ++i) {
    if (a[i] >= b) {
      a[i + 1] += a[i] - b;
      a[i] = b;
    } else {
      ++x1;
      a[i + 1] += a[i];
      a[i] = 0;
    }
  }
  int x2 = 0;
  for (int i = n; i >= (n + 3) / 2; --i) {
    if (a[i] >= b) {
      a[i - 1] += a[i] - b;
      a[i] = b;
    } else {
      ++x2;
      a[i - 1] += a[i];
      a[i] = 0;
    }
  }
  cout << max(x1, x2) << "\n";
  return 0;
}
