#include <bits/stdc++.h>
using namespace std;
int main() {
  int N;
  int64_t D, B;
  cin >> N >> D >> B;
  vector<int64_t> A(N);
  for (int i = 0; i < N; i++) cin >> A[i];
  int ans = 0;
  for (int t = 0; t < 2; t++) {
    int T = (N - t - 1) / 2, res = 0;
    int64_t sum = 0;
    int r = 0;
    for (int i = 0; i <= T; i++) {
      while (r < N && r - i <= (i + 1) * D) {
        sum += A[r];
        r++;
      }
      if (sum >= (res + 1) * B) res++;
    }
    ans = max(ans, T + 1 - res);
    reverse(A.begin(), A.end());
  }
  cout << ans << endl;
  return 0;
}
