secvente

Time limit: 1s Memory limit: 256MB Input: secvente.in Output: secvente.out

Se dă numărul natural nn și un șir aa, de nn numere naturale. Numim o secvență specială o secvență de tipul ai,ai+1,,aja_i, a_{i+1},\dots, a_j cu proprietatea că ai=aja_i = a_j. Numim suma unei secvențe ai,ai+1,,aja_i,a_{i+1},\dots, a_j, suma tuturor valorilor din secvență.

Cerința

Cunoscând numărul nn și șirul aa cu nn numere naturale, se cere să se determine suma sumelor tuturor secvențelor speciale din șir.

Date de intrare

Fișierul secvente.in va conține pe prima linie numărul natural nn, iar pe linia următoare nn numere naturale separate prin câte un spațiu.

Date de ieșire

Fișierul secvente.out va contine pe prima linie un număr natural ce reprezintă suma sumelor tuturor secvențelor speciale din șirul citit din fișierul de intrare. Deoarece acest număr poate fi foarte mare, el va fi afișat modulo 109+710^9+7.

Restricții și precizări

  • 1n21051 \le n \le 2 \cdot 10^5;
  • 1ai21051 \le a_i \le 2 \cdot 10^5.
# Punctaj Resctricții
1 20 1n21021 \le n \le 2 \cdot 10^2
2 20 1n21031 \le n \le 2 \cdot 10^3
3 60 Nu există alte restricții.

Exemplul 1

secvente.in

5 
1 2 1 2 1

secvente.out

27 

Explicație

Secvențele speciale sunt: [1,1],[1,3],[1,5],[2,2],[2,4],[3,3],[3,5],[4,4],[5,5][1, 1], [1, 3], [1, 5], [2, 2], [2, 4], [3, 3], [3, 5], [4, 4], [5, 5]

Exemplul 2

secvente.in

18 
5 185 19582 5 536 185 462 536 19582 5 19582 185 462 19582 536 5 462 19582 

secvente.out

1338362 

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