import bisect



N, X = list(map(int, input().split()))

l = list(map(int, input().split()))

d = [-1]*(N+1) #0-index #バウンドする位置を格納するリスト

d[0] = 0 #バウンドする初期値は0



for i in range(1, N+1):

    d[i] = d[i-1] + l[i-1]



#print(d)

#print('left:', bisect.bisect_left(d, X))

#print('right:', bisect.bisect_right(d, X))

print((bisect.bisect_right(d, X)))
import bisect



n,x = list(map(int, input().split()))

l = tuple(map(int, input().split()))



d = [-1]*(n+1)

d[0] = 0

for i in range(1, n+1):

    d[i] = d[i-1] + l[i-1]

res = bisect.bisect_right(sorted(d), x)

print(res)
import bisect

N, X = list(map(int, input().split()))
l = list(map(int, input().split()))
d = [-1] * (N + 1)  # 0-index #バウンドする位置を格納するリスト
d[0] = 0  # バウンドする初期値は0
for i in range(1, N + 1):
    d[i] = d[i - 1] + l[i - 1]
# print(d)
# print('left:', bisect.bisect_left(d, X))
# print('right:', bisect.bisect_right(d, X))
print((bisect.bisect_right(d, X)))

import bisect

n, x = list(map(int, input().split()))
l = tuple(map(int, input().split()))
d = [-1] * (n + 1)
d[0] = 0
for i in range(1, n + 1):
    d[i] = d[i - 1] + l[i - 1]
res = bisect.bisect_right(sorted(d), x)
print(res)

-N, X = list(map(int, input().split())) -l = list(map(int, input().split())) -d = [-1] * (N + 1)  # 0-index #バウンドする位置を格納するリスト -d[0] = 0  # バウンドする初期値は0 -for i in range(1, N + 1): +n, x = list(map(int, input().split())) +l = tuple(map(int, input().split())) +d = [-1] * (n + 1) +d[0] = 0 +for i in range(1, n + 1): -# print(d) -# print('left:', bisect.bisect_left(d, X)) -# print('right:', bisect.bisect_right(d, X)) -print((bisect.bisect_right(d, X))) +res = bisect.bisect_right(sorted(d), x) +print(res)