Divendres a 2n DAMvi


Enviar solució

Punts: 13
Temps Límit: 5.0s
Límit de memòria: 123M

Autor/a:
tipus del problema
Estructures de Dades, Optimització, Timelimit!
Categoria
Codejam
Llenguatges permesos
Bash, C Hashtag, C++, Haskell, Java, Kotlin, PHP, Python

divendres

A 2n DAMvi, divendres és un dia dolent. Hi ha un munt de classes, diguem-ne \(N\), de 1h cada una, que es donen una després de l'altre. Els dies que toca no-presencial degut al Covid és pitjor encara, ja que hi ha moltes coses que et criden l'atenció, com son l'Overwatch, el LoL, o el Factorio. Tu saps que tens la força de voluntat d'assistir a \(K\) classes. A més, les classes han de ser seguides, ja que si et desconnectes per anar al LoL saps perfectament que no tornaràs. Ara bé, estas molt cansat per haver dormit poc per haver jugat massa a coses que et criden l'atenció, així que aprofitar, només aprofitaràs 2 classes.

El problema es que no totes les classes són igual d'interessants. Hi ha classes més interessants que altres. Per sort, saps abans com d'interessant serà cada classe. Sabent això, vols triar a quines classes assistiràs i quines dues aprofitaràs per a maximitzar el valor de la suma d'aquestes dues classes aprofitades.

Entrada

La primera línia indica els casos de prova a considerar Cada cas té dues línies. La primera tindrà \(N\), el nombre de classes, i \(K\), el nombre de classes seguides que tens la força de voluntat per a assistir Es garanteix que \(1<N\leq1000000\) (un milió de classes per dia ja va bé) i \(1<K\leq N\) Després vindran \(N\) nombres amb el valor d'interés de cada una de les classes. El valor d'interés de cada classe és menor a \(2^{31}-1\). Les meves classes son interessants, pero no TANT interessants.

Sortida

Per cada cas de prova caldrà respondre: El valor màxim de la suma de l'interés de les dues classes a les que assisteixis.

Exemple d'Entrada

3
4 3
6 2 4 5
4 3
1 2 4 5
6 3
1 2 6 2 1 5

Exemple de Sortida

10
9
8

Explicació dels exemples

En el primer cas el més convenient és anar a les 3 primeres, i per tant, \(6+4=10\) En el segon cas és millor anar a les 3 últimes i per tant, \(4+5=9\) En l'ultim cas el millor és anar a la 2,3,4 i per tant, \(2+6=8\)


Comentaris