Atenție! Aceasta este o versiune veche a paginii., scrisă la 2020-04-14 13:54:37.000.
Revizia anterioară   Revizia următoare  

Fișierul intrare/ieșire bomboane4.in, bomboane4.out Sursă Codeforces
Autor autor necunoscut Adăugată de avatar francu Cristian Frâncu francu
Timp de execuție pe test 0.03 sec Limită de memorie 4096 KB
Scorul tău N/A Dificultate stea de rating de tip fullstea de rating de tip fullstea de rating de tip halfstea de rating de tip emptystea de rating de tip empty
open book Poți vedea testele pentru această problemă accesând atașamentele .

Bomboane4

Avem N coșuri cu bomboane, al i*-lea coș conține *bi bomboane. Coșurile sunt numerotate de la 1 la n. Poți aplica următoare operatie: alegi un interval [st, dr] și redistribui bomboanele după următoarea regulă:

  • Fiecare element din șirul bst, bst + 1, ..., bdr devine egal cu (bst + bst + 1 + ... + bdr) / (dr – st + 1).

Poți aplica această operație de oricâte ori vrei.

Dorel vrea să afle care este cel mai mic șir in ordine lexicografică la care se poate ajunge după aplicarea operațiilor.

Date de intrare

Fișierul de intrare bomboane4.in conține pe prima linie N, numărul de coșuri. Pe urmatoarea linie avem cele N coșuri.

Date de ieșire

În fișierul de ieșire bomboane4.out vom avea șirul dorit de Dorel doar că fiecare element va fi scris ca o fracție ireductibiliă, fracțiile vor fi scrise pe linii separate.

Restricții

  • 1 ≤ n ≤ 100000
  • 1 ≤ bi ≤ 4000
  • Pentru 20% din teste n ≤ 5000

Exemplu

bomboane4.in bomboane4.out
4 7 5 5 7
17 3 17 3 17 3 7 1

Trebuie să te autentifici pentru a trimite soluții. Click aici

Indicii de rezolvare

Arată 3 categorii