#include <bits/stdc++.h>
using namespace std;
long long ai[200005], bi[200005];
int main() {
  long long a, k;
  cin >> a >> k;
  long long sum = 0, ant = 0, ant1 = 0;
  for (int i = 0; i < a; i++) {
    long long t;
    cin >> t;
    ai[i] = t;
  }
  for (int j = 0; j < a; j++) {
    bi[j] = ai[a - j - 1];
  }
  long long le = ai[0];
  for (int i = 1; i < a; i++) {
    if ((ai[i] + le) >= k) {
      long long q = (ai[i] + le) / k;
      ant += q;
      le = ai[i] + le - q * k;
      if (le == 0) {
        le = ai[i + 1];
        i++;
      }
    } else {
      if ((ai[i] + ai[i + 1]) >= k)
        le = ai[i];
      else {
        le = ai[i + 1];
        i++;
      }
      ant++;
    }
  }
  if (le != 0) {
    long long q = le / k;
    ant += q;
    le = le - q * k;
    if (le != 0) ant++;
  }
  le = bi[0];
  for (int i = 1; i < a; i++) {
    if ((bi[i] + le) >= k) {
      long long q = (bi[i] + le) / k;
      ant1 += q;
      le = bi[i] + le - q * k;
      if (le == 0) {
        le = bi[i + 1];
        i++;
      }
    } else {
      if ((bi[i] + bi[i + 1]) >= k)
        le = bi[i];
      else {
        le = bi[i + 1];
        i++;
      }
      ant1++;
    }
  }
  if (le != 0) {
    long long q = le / k;
    ant1 += q;
    le = le - q * k;
    if (le != 0) ant1++;
  }
  cout << ant << endl;
  return 0;
}
