Numararea din Ohio

Time limit: 1s Memory limit: 512MB Input: ohio.in Output: ohio.out

"Doar în Ohio este posibil așa ceva..." - Baby Gronk

Cerință

În Ohio există o tastatură cu NN butoane conectată la un calculator, iar fiecărui buton îi este atrbiuită o valoare aia_i. Totuși, fiind Ohio, tastatura este stricată. Atunci când se apasă o combinație de KK butoane, calculatorul va afișa pe ecran valoarea maximă dintre valorile butoanelor care au fost apăsate. Fiindcă Baby Gronk este din Ohio, acesta va apăsa pe toate combinațiile de KK butoane distincte posibile. Care este suma, modulo 1 000 000 0071\ 000\ 000\ 007, a valorilor care apar pe ecranul calculatorului?

Date de intrare

Pe prima linie a fișierului de intrare ohio.in se găsesc NN și KK. Pe următoarea linie se găsesc NN valori aia_i.

Date de ieșire

Pe prima linie a fișierului de ieșire ohio.out se va găsi răspunsul problemei, așa cum este descris în enunț.

Restricții și precizări

  • N100 000N \le 100\ 000, K50K \le 50
  • ai109a_i \le 10^9
  • Pentru 4040 puncte, N1000N \le 1000

Exemplul 1

ohio.in

5
3 2 4 2 3 4 

ohio.out

39 

Explicație

Toate subseturile de valori corespunzătoare tuturor combinărilor posibile sunt: [2, 4, 2], [2, 4, 3], [2, 4, 4], [2, 2, 3], [2, 2, 4], [2, 3, 4], [4, 2, 3], [4, 2, 4], [4, 3, 4], [2, 3, 4].

Exemplul 2

ohio.in

5 
1 1 0 1 1 1 

ohio.out

4 

Exemplul 3

ohio.in

5 
2 3 3 4 0 0

ohio.out

31

Log in or sign up to be able to send submissions!