kmedie

Time limit: 0.3s Memory limit: 64MB Input: kmedie.in Output: kmedie.out

Cerință

Definim KMedia unui șir de numere naturale ca fiind media aritmetică a tuturor elementelor șirului după ce am eliminat cele mai mari kk numere și cele mai mici kk numere.
De exemplu: pentru șirul 1 7 4 2 5 91 \ 7 \ 4 \ 2 \ 5 \ 9 și k=2k = 2, KMedia șirului este (4+5)/2=9/2=4(4 + 5)/ 2 = 9/2 = 4, unde // este câtul operației de împărțire pe numere naturale.

Se dau trei numere naturale nn, mm, kk și un șir de nn numere întregi pentru care dorim să calculăm suma KMediilor tuturor subsecvențelor de lungime mm modulo 1 000 000 0071 \ 000 \ 000 \ 007.

Date de intrare

Pe prima linie a fișierului kmedie.in se află cele trei numere naturale nn, mm și kk. Pe următoarea linie se află nn numere naturale reprezentând elementele șirului.

Date de ieșire

În fișierul kmedie.out se va scrie un singur număr reprezentand suma tuturor KMediilor subsecvențelor de lungime mm ale șirului, modulo 1 000 000 0071 \ 000 \ 000 \ 007.

Restricții și precizări

  • 1k,n,m300 0001 \leq k,n,m \leq 300 \ 000;
  • 2×k<mn2 \times k \lt m \leq n;
  • Elementele șirului sunt numere naturale din intervalul [1;1 000 000][1; 1 \ 000 \ 000];
  • Pentru 3131 puncte avem k,n,m1 000k, n, m \leq 1 \ 000;
  • Pentru alte 2727 de puncte avem k=1k = 1;
  • Pentru restul de 4242 de puncte nu sunt restricții suplimentare.

Exemplu

kmedie.in

10 6 2 
3 1 7 4 2 5 9 3 10 2

kmedie.out

19

Explicație

  • Prima subsecvență este 3 1 7 4 2 53 \ 1 \ 7 \ 4 \ 2 \ 5, a cărei KMedie este (3+4)/2=7/2=3(3+4)/2=7/2=3;
  • A doua subsecvență este 1 7 4 2 5 91 \ 7 \ 4 \ 2 \ 5 \ 9, a cărei KMedie este (4+5)/2=9/2=4(4+5)/2=9/2=4;
  • A treia subsecvență este 7 4 2 5 9 37 \ 4 \ 2 \ 5 \ 9 \ 3, a cărei KMedie este (4+5)/2=9/2=4(4+5)/2=9/2=4;
  • A patra subsecvență este 4 2 5 9 3 104 \ 2 \ 5 \ 9 \ 3 \ 10, a cărei KMedie este (4+5)/2=9/2=4(4+5)/2=9/2=4;
  • A cincea subsecvență este 2 5 9 3 10 22 \ 5 \ 9 \ 3 \ 10 \ 2, a cărei KMedie este (5+3)/2=8/2=4(5+3)/2=8/2=4.

Suma tuturor KMediilor este 3+4+4+4+4=193+4+4+4+4 = 19, care modulo 1 000 000 0071 \ 000 \ 000 \ 007 ramâne tot 1919, deoarece 19 % 1 000 000 007=1919 \ \% \ 1 \ 000 \ 000 \ 007 = 19.

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