HOTELS - Hotels Along the Croatian Coast

There are N hotels along the beautiful Adriatic coast. Each hotel has its value in Euros.

Sroljo has won M Euros on the lottery. Now he wants to buy a sequence of consecutive hotels, such that the sum of the values of these consecutive hotels is as great as possible - but not greater than M.

You are to calculate this greatest possible total value.

Input

In the first line of the input there are integers N and M (1 ≤ N ≤ 300 000, 1 ≤ M < 231).

In the next line there are N natural numbers less than 106, representing the hotel values in the order they lie along the coast.

Output

Print the required number (it will be greater than 0 in all of the test data).

Example

input
5 12
2 1 3 4 5
output
12
input
4 9
7 3 5 6
output
8

Added by:Adrian Satja Kurdija
Date:2011-10-30
Time limit:1s
Source limit:50000B
Memory limit:1536MB
Cluster: Cube (Intel G860)
Languages:All except: ASM64
Resource:that would be me

hide comments
2016-06-16 07:23:41
Both for (no. of hotels<=m) and (no. of hotels<m) the solution gets AC :P
2016-04-29 12:11:07 hareesh
got 1 TLE for O(n^2)
O(n) AC
2016-04-28 09:43:01 Irfan
solvable with prefix sum .. O(nlogn)
2016-04-21 11:01:24
O(n) solution. TLE in Java but got AC in C
2016-04-16 08:49:45
after a few TLEs,,,finally came up with a O(n) solution X)
2016-03-16 14:29:27
helped to get back on track ;)
2016-02-04 11:31:22
do not search for any algo on google.. just do it by urself .. AC in 1 go...
2016-01-03 16:54:43
O(n) :)
2015-12-23 11:20:47 asshole
i think you should change the time limit so that it can be accepted in python too
2015-10-19 11:29:39 sharif ullah
modified version of KAdane's algorithm!!!
© Spoj.com. All Rights Reserved. Spoj uses Sphere Engine™ © by Sphere Research Labs.