#include <bits/stdc++.h>
using namespace std;
long long a[100005];
int main() {
  int n, k;
  while (~scanf("%d %d", &n, &k)) {
    long long sum = 0;
    long long num = 0;
    int flag = 1;
    for (int i = 1; i <= n; i++) {
      scanf("%lld", &a[i]);
      if (i != 1 && i != n) {
        if (a[i] != 0) {
          flag = 0;
        } else {
          flag = 1;
        }
      }
      sum += a[i];
    }
    if (k > sum) {
      long long num1 = 0;
      long long num2 = 0;
      while (a[1] >= k) {
        num1 = a[1] / k;
        a[1] -= num1 * k;
      }
      if (a[1] > 0) {
        num1++;
      }
      sum -= a[1];
      while (sum >= k) {
        num2 = sum / k;
        sum -= num2 * k;
      }
      if (sum > 0) {
        num2++;
      }
      num = num1 + num2;
      printf("%lld\n", num);
    } else if (n == 1) {
      while (a[1] >= k) {
        num = a[1] / k;
        a[1] -= num * k;
      }
      if (a[1] > 0) {
        num++;
      }
      printf("%lld\n", num);
    } else {
      if (flag) {
        long long num1 = 0;
        long long num2 = 0;
        while (a[1] >= k) {
          num1 = a[1] / k;
          a[1] -= num1 * k;
        }
        if (a[1] > 0) {
          num1++;
        }
        while (a[n] >= k) {
          num2 = a[n] / k;
          a[n] -= num2 * k;
        }
        if (a[n] > 0) {
          num2++;
        }
        num = num1 + num2;
        printf("%lld\n", num);
      } else {
        while (sum >= k) {
          num = sum / k;
          sum -= num * k;
        }
        if (sum > 0) {
          num++;
        }
        printf("%lld\n", num);
      }
    }
  }
  return 0;
}
