#include <bits/stdc++.h>
using namespace std;
long long i, n, dis, num, x, t1, t2;
long long s[100010];
long long min(long long a, long long b) {
  if (a < b) return a;
  return b;
}
long long max(long long a, long long b) {
  if (a > b) return a;
  return b;
}
int main() {
  scanf("%I64d%I64d%I64d", &n, &dis, &num);
  for (i = 1; i <= n; i++) {
    scanf("%I64d", &s[i]);
    s[i] += s[i - 1];
  }
  for (i = 1; i <= n / 2; i++) {
    x = s[min(n, i * dis + i)];
    if (x >= t1 * num + num) t1++;
    x = s[n] - s[max(0, n - i * dis - i)];
    if (x >= t2 * num + num) t2++;
  }
  printf("%I64d\n", n / 2 - min(t1, t2));
}
