Sommes Partielles

Time limit: 1s Memory limit: 64MB Input: Output:

Cerință

Se dă un șir AA de NN elemente cu valori întregi.
Se va aplica următoarea operație șirului AA de TT ori:

Fie SS șirul de sume parțiale ale lui AA, a.î SiS_i = A1+A2+...+AiA_1 + A_2 + ... + A_i.
Șirul AA se inlocuiește cu șirul SS

Care va fi suma elementelor din șirul AA după aplicarea tuturor operațiilor?
Suma va fi afișată modulo 109+710^9+7.

Date de intrare

Pe prima linie se găsesc două numere întregi, NN și TT.
Pe următoarea linie se găsesc valorile șirului AA.

Date de ieșire

Suma elementelor din AA după aplicarea celor TT operații modulo 109+710^9+7.

Restricții și precizări

  • 1N,T1061 \leq N,T \leq 10^6;
  • 109Ai109-10^9 \leq A_i \leq 10^9;

Subtaskuri

  • Pentru 15p15p : NT106N \cdot T \leq 10^6
  • Pentru alte 15p15p : AA are un singur element nenul
  • Pentru alte 10p10p : Toate elementele din AA sunt 11

Exemplul 1

stdin

4 3
1 2 -1 1

stdout

37

Explicație

Șirul AA are valorile după cum urmează
După 00 operații A=(1,2,1,1)A=(1,2,-1,1)
După 11 operație A=(1,3,2,3)A=(1,3,2,3)
După 22 operații A=(1,4,6,9)A=(1,4,6,9)
După 33 operații A=(1,5,11,20)A=(1,5,11,20)
Suma valorilor din AA după 33 operații este 3737

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