#include <bits/stdc++.h>
using namespace std;
const long long int mxn = 1e5 + 5;
int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(NULL);
  long long int t = 1;
  while (t--) {
    long long int i, j, k, n, m;
    cin >> n >> m;
    vector<long long int> t(n);
    for (i = 0; i < n; i++) cin >> t[i];
    long long int mp[101] = {0};
    long long int s = 0;
    long long int ans[n];
    for (i = 0; i < n; i++) {
      s += t[i];
      long long int m1 = 0;
      long long int tmp = s;
      for (j = 100; j > 0 && tmp > m; j--)
        if (mp[j]) {
          if ((tmp - mp[j] * j) > m)
            m1 += mp[j], tmp -= mp[j] * j;
          else {
            k = (tmp - m) / j;
            if ((tmp - m) % j) k++;
            m1 += k;
            tmp -= k * j;
          }
        }
      mp[t[i]]++;
      ans[i] = m1;
    }
    for (auto i : ans) cout << i << " ";
  }
  return 0;
}
