Revizia anterioară Revizia următoare
Fişierul intrare/ieşire: | galagie.in, galagie.out | Sursă | infoarena 2.0 |
Autor | Din Folclor | Adăugată de | |
Timp execuţie pe test | 0.05 sec | Limită de memorie | 20480 kbytes |
Scorul tău | N/A | Dificultate | N/A |
Vezi solutiile trimise | Statistici
Galagie
Toată lumea ştie că în pauzele dintre orele de liceu se face foarte multă gălăgie. O anumită clasă deţine recordul pentru acest nivel de gălăgie, iar voi vreţi să îl aflaţi. Clasa este formată din N elevi, care sunt aşezaţi într-un singur rând. Fiecare pereche de elevi poartă o conversaţie simultan (deci fiecare elev poartă o conversaţie cu ceilalţi N-1 elevi). Volumul discuţiei dintre oricare doi elevi care poartă o conversaţie este egal cu distanţa dintre ei.
Calculaţi volumul total generat de cele N*(N-1)/2 conversaţii.
Date de intrare
Pe prima linie a fişierului galagie.in se află numărul N, reprezentând numărul de elevi. Pe fiecare din următoarele N linii se află câte un număr natural, reprezentând poziţia unui elev în rând, relativ la începutul rândului.
Date de ieşire
Pe singura linie a fişierului galagie.out se va afla un singur număr, reprezentând volumul total modulo 1000000007.
Restricţii
- 2 ≤ N ≤ 100000
- Poziţiile elevilor sunt numere naturale cuprinse între 0 şi 109 (sala de clasă este foarte mare)
Exemplu
galagie.in | galagie.out |
---|---|
3 2 5 3 | 6 |
Explicaţie
Volumul discuţiei între primii 2 elevi este egal cu |2-5| = 3 unităţi. Volumul discuţiei între ultimii doi elevi este egal cu |5-3| = 2 unităţi. Volumul discuţiei între primul şi ultimul elev este egal cu |2-3| = 1 unităţi. Volumul total generat de discuţii este egal cu 3+2+1 = 6 unităţi.