Fişierul intrare/ieşire:subsir2.in, subsir2.outSursăpreONI 2006 Runda 3
AutorMircea Bogdan PasoiAdăugată de
Timp execuţie pe test0.05 secLimită de memorie65536 kbytes
Scorul tăuN/ADificultatenormalnormalnormalnormalnormal

Vezi solutiile trimise | Statistici

Subsir 2

Bronzarel se antreneaza zi de zi pentru a deveni un mare olimpic la informatica, avandu-l pe Zaharel ca mentor. Desigur, sursa lor preferata de probleme este infoarena! Vazandu-l foarte increzator, Zaharel vrea sa-l testeze pe Bronzarel cu o noua problema si ii spune: "Iti dau un sir de N numere intregi si vreau sa imi spui care este cel mai scurt subsir crescator maximal."

Cerinta

Scrieti un program care rezolva problema primita.

Date de intrare

Pe prima linie din fisierul subsir2.in se va gasi numarul N. Pe urmatoarea linie vor fi scrie N numere intregi.

Date de iesire

Prima linie din fisierul subsir2.out va contine un numar Lmin, reprezetand lungimea minima a unui subsir crescator maximal. Pe urmatoarea linie se vor afisa Lmin numere in ordine crescatoare, reprezetand poziitile elementelor din sirul initial care fac parte din subsirul ales. Daca exista mai multe solutii, se va afisa cea lexicografic minima, din punct de vedere al valorilor elementelor din subsir.

Restrictii si observatii

  • 1 ≤ N ≤ 5 000
  • 50% din teste vor avea N ≤ 500
  • Sirul dat va contine numere intregi din intervalul [-1 000 000, 1 000 000]
  • Considerand ca sirul dat este A=(a1,a2...aN), se numeste subsir al lui A un sir B=(bi1,bi2...biN) cu proprietatea 1 ≤ i1 < i2 < ... < iK ≤ N.
  • Spunem ca un subsir B=(bi1,bi2...biN) este crescator maximal daca ai1 ≤ ai2 ≤ ... ≤ aiK si nu exista nici un x astfel incat: sa existe j < K, ij < x < ij+1 si aij ≤ ax ≤ aij+1, sau 1 ≤ x < i1 si ax ≤ ai1 sau iK < x ≤ N si aiK <= ax
  • Pentru fiecare test se va acorda 40% din punctaj pentru determinarea corecta a lungimii subsirului, inca 40% pentru determinarea unei solutii corecte, si inca 20% daca solutia determinata este minima din punct de vedere lexicografic
  • Un sir (x1,x2...xK) este mai mic din punct de vedere lexicografic decat un alt sir (y1,y2...yK) daca exista o pozitie p astfel incat xp < yp si x1 = y1, x2 = y2 ... xp-1 = yp-1.

Exemplu

subsir2.insubsir2.out
6
1 3 6 2 5 4
3
1 4 6

Explicatie: Subsirul cu elemente pe poziiile 1,4,6 este (1,2,4). Acesta este maximal si are lungime minima. Alte subsiruri maximale de aceeasi lungime sunt:
(1,2,5)
(1,3,4)
(1,3,5)
Solutia data este minima lexicografic din punct de vedere al valorilor elementelor subsirului.

Trebuie sa te autentifici pentru a trimite solutii. Click aici

Cum se trimit solutii?

remote content