#include<bits/stdc++.h>

#define read(v) for(auto &i : v) cin >> i;

#define fl "\n"

using ll = long long;
using namespace std;

// 7 4 8 6 7 9 1

bool ok(int b, int m, vector<ll> &v, vector<ll> &pref) {
	int n = v.size();
	for(int i = 0; i < n-b+1; i++) {
		int j = i+b;
		if(pref[j] - pref[i] > m) return false;
	}
	return true;
}

int quadri(int n, long long m, int V[]) {
	vector<ll> v(n), pref(n+1);
	pref[0] = 0;
	for(int i = 0; i < n; i++) {
		v[i] = 1ll*V[i];
		pref[i+1] = pref[i] + v[i];
	}
	
	ll lo = 1;
	ll hi = n;
	
	if(!ok(1, m, v, pref)) return 0;
	if(ok(n, m, v, pref)) return n;
	while(hi-lo > 1) {
		ll mid = (lo+hi)/2;
		if(ok(mid, m, v, pref)) {
			lo = mid;
		} else {
			hi = mid;
		}
	}
	return lo;
}

#ifndef EVAL
int main() {
	int n;
	ll m;
	cin >> n >> m;
	vector<int> v(n);
	read(v);
	
	cout << quadri(n, m, v) << fl;
}
#endif
