#include <bits/stdc++.h>
#define task ""
#define ff first
#define ss second
using namespace std;
using ld = long double;
using ull = unsigned long long;
using ll = long long;
using pll = pair <ll, ll>;
using pii = pair <int, int>;
const char el = '\n';
const char sp = ' ';
const ll inf = 1e9; //1e18;
const ll maxN = 1e6 + 5;
int n;
ll m, a[maxN];
int main ()
{
ios_base::sync_with_stdio(0);
cin.tie(0);
if (fopen(task".inp", "r"))
{
freopen(task".inp", "r", stdin);
freopen(task".out", "w", stdout);
}
if (!(cin >> n >> m)) return 0;
for (int i = 1; i <= n; ++i) cin >> a[i];
int min_k = 1, j = 1;
ll current_sum = 0;
for (int i = 1; i <= n; ++i)
{
while (j <= n && current_sum < m)
{
current_sum += a[j];
j++;
}
if (current_sum >= m)
{
min_k = max(min_k, j - i);
}
else
{
min_k = max(min_k, n - i + 2);
}
current_sum -= a[i];
}
cout << min_k << el;
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CiNkZWZpbmUgdGFzayAiIgojZGVmaW5lIGZmIGZpcnN0CiNkZWZpbmUgc3Mgc2Vjb25kCnVzaW5nIG5hbWVzcGFjZSBzdGQ7CnVzaW5nIGxkID0gbG9uZyBkb3VibGU7CnVzaW5nIHVsbCA9IHVuc2lnbmVkIGxvbmcgbG9uZzsKdXNpbmcgbGwgPSBsb25nIGxvbmc7CnVzaW5nIHBsbCA9IHBhaXIgPGxsLCBsbD47CnVzaW5nIHBpaSA9IHBhaXIgPGludCwgaW50PjsKY29uc3QgY2hhciBlbCA9ICdcbic7CmNvbnN0IGNoYXIgc3AgPSAnICc7CmNvbnN0IGxsIGluZiA9IDFlOTsgLy8xZTE4Owpjb25zdCBsbCBtYXhOID0gMWU2ICsgNTsKIAppbnQgbjsKbGwgbSwgYVttYXhOXTsKIAppbnQgbWFpbiAoKQp7CiAgICBpb3NfYmFzZTo6c3luY193aXRoX3N0ZGlvKDApOwogICAgY2luLnRpZSgwKTsKICAgIGlmIChmb3Blbih0YXNrIi5pbnAiLCAiciIpKQogICAgewogICAgICAgIGZyZW9wZW4odGFzayIuaW5wIiwgInIiLCBzdGRpbik7CiAgICAgICAgZnJlb3Blbih0YXNrIi5vdXQiLCAidyIsIHN0ZG91dCk7CiAgICB9CiAgICBpZiAoIShjaW4gPj4gbiA+PiBtKSkgcmV0dXJuIDA7CiAgICBmb3IgKGludCBpID0gMTsgaSA8PSBuOyArK2kpIGNpbiA+PiBhW2ldOwogCiAgICBpbnQgbWluX2sgPSAxLCBqID0gMTsKICAgIGxsIGN1cnJlbnRfc3VtID0gMDsKICAgIGZvciAoaW50IGkgPSAxOyBpIDw9IG47ICsraSkKICAgIHsKICAgICAgICB3aGlsZSAoaiA8PSBuICYmIGN1cnJlbnRfc3VtIDwgbSkKICAgICAgICB7CiAgICAgICAgICAgIGN1cnJlbnRfc3VtICs9IGFbal07CiAgICAgICAgICAgIGorKzsKICAgICAgICB9CiAgICAgICAgaWYgKGN1cnJlbnRfc3VtID49IG0pCiAgICAgICAgewogICAgICAgICAgICBtaW5fayA9IG1heChtaW5faywgaiAtIGkpOwogICAgICAgIH0KICAgICAgICBlbHNlCiAgICAgICAgewogICAgICAgICAgICBtaW5fayA9IG1heChtaW5faywgbiAtIGkgKyAyKTsKICAgICAgICB9CiAgICAgICAgY3VycmVudF9zdW0gLT0gYVtpXTsKICAgIH0KICAgIGNvdXQgPDwgbWluX2sgPDwgZWw7CiAgICByZXR1cm4gMDsKfQo=