El Vuelo de la Bruja


Submit solution

Points: 100 (partial)
Time limit: 2.0s
Memory limit: 128M

Author:
Problem type
Allowed languages
C, C++, Java, Pascal

Una pequeña bruja de 360 años, se prepara para iniciarse en una orden que está de moda en el país de las brujas, pues ya tiene la edad y los conocimientos necesarios. Pero antes debe pasar una prueba, un poco absurda, pues consiste en un vuelo de unos 20 años.

La prueba consiste en realizar un vuelo con la cabeza casi tocando el suelo y en completo silencio. Debido al clima del país y a la distancia recorrida, es frecuente que la escoba de la bruja durante el viaje se dañe. Por tanto tuvo que llevar muchas escobas de bruja para completar el viaje. El único problema es que si el peso de toda la carga de las escobas de bruja es mayor de lo que ella puede manejar entonces la bruja empieza a gritar, y eso está prohibido, porque el viaje es absolutamente silencioso.

Antes de irse, la bruja prepara un conjunto de escobas. Ella con los ojos vendados debe elegir una subsecuencia de estas escobas para que el peso de las mismas no exceda el que ella puede soportar. Las brujas de tan corta edad pueden percibir el peso de las cosas solo con sus ojos.

La bruja necesita dada la secuencia de escobas y el peso de cada una; encontrar el mayor valor de M para que el peso de todas las subsecuencias de escobas de longitud M sea soportado por la bruja. Una subsecuencia de longitud M comienza en la escoba i y termina en la escoba i+M-1, y su peso es igual a la suma de todos los pesos de las escobas que forman la subsecuencia.

Entrada

La entrada comienza con un entero positivo que representa el número de casos de prueba que siguen, no serán más de 50. En la primera línea de cada caso de prueba habrá un número entero P (1 \leq P \leq 2^{31}1) que representa el peso que puede soportar la bruja. La segunda línea muestra un número entero N (1 \leq N \leq 180 000) que representa el número de escobas en la secuencia. En las siguientes N líneas aparecerá un número entero positivo menor que 1000 000 que representa el peso de la i-ésima escoba.

Salida

La salida consistirá en una línea por caso de prueba, que contiene el valor máximo que puede tomar M.

Ejemplo de Entrada

1
300
10
65
63
40
12
98
87
46
15
42
15

Ejemplo de Salida

5

Comments

There are no comments at the moment.