Evaluación continua (1) P10498


Statement
 

pdf   zip

El profesor Rupert ya tiene las notas que los alumnos han ido obteniendo a lo largo del semestre. Las notas de cada alumno son una lista de valores enteros tanto positivos como negativos. Antiguamente, había kk notas por alumno, y la nota final se obtenía como la suma de todas esas kk notas. Pero los alumnos se quejaban de que a veces tenían bajones anímicos en algún momento del semestre, y decían que sólo deberían tenerse en cuenta los periodos buenos. Por ese motivo, Rupert decidió obtener muchas más notas, nn en total para un nkn\geq k, y determinar que la nota de un alumno és la máxima suma que se obtiene escogiendo kk notas consecutivas de entre las nn.

Entrada

Cada entrada consiste en como mucho 100 casos. Cada caso tiene, en una primera línea, dos enteros nn y kk, con 1kn1051\leq k\leq n\leq 10^5. En una segunda línea, aparecen nn enteros con rango entre 103-10^3 y 10310^3.

Salida

Para cada caso, hay que escribir en una línea el máximo valor que se puede obtener sumando kk valores consecutivos escogidos de entre los nn valores de la entrada. Tu programa dispone de un segundo de CPU para resolver cada entrada.

Puntuación

  • TestA:   Resolver entradas con n103n\le 10^3.

  • TestB:   Resolver entradas con n105n\le 10^5.

Public test cases
  • Input

    3 2
    1 -2 2
    5 1
    1 2 3 4 5
    10 4
    10 0 10 8 3 7 -1 -100 10 10
    

    Output

    0
    5
    28
    
  • Information
    Author
    Guillem Godoy
    Language
    Spanish
    Official solutions
    C++
    User solutions
    C C++ Haskell