Sunteți pe pagina 1din 2

Ministerul Educaiei i Cercetrii tiinifice

Olimpiada de Informatic - LICEU - etapa naional


Trgovite, Dmbovia, 3-8 aprilie 2015
Ziua 1
Sursa : risc.pas, risc.cpp, risc.c
Problema 2 - risc

Clasa a IX-a

100 puncte

Pentru a participa la un concert, n persoane s-au aezat la coad pe un singur rnd n ateptarea
deschiderii casei de bilete. nlimile celor n persoane sunt toate distincte. Pe baza acestei informaii
cruciale, agenii de securitate au decis ca din motive de ... securitate, ordinea persoanelor care ateapt la
coad trebuie schimbat n funcie de nlimile lor.
Astfel, agentii de paz vor alege, pe rnd, cte o persoan i o vor trimite la sfritul rndului.
Dup fiecare operaie de tipul acesta, s-i spunem de mutare, rndul se restrnge, ocupndu-se poziia
rmas liber. Strategia agenilor de paz este aceasta: la terminarea tuturor operaiilor de mutare, riscul
minim de securitate se obine dac toate persoanele aflate n dreapta persoanei celei mai nalte vor fi mai
nalte dect cele aflate n stnga persoanei cele mai nalte. n plus, nalimile persoanelor vor fi
cresctoare pn la poziia k a persoanei celei mai nalte i descresctoare dup poziia k.
Mai exact: dac h1, h2, , hn sunt nlimile persoanelor dup finalizarea operaiilor de mutare,
atunci: exist o poziie k, cu 1 k n astfel nct h1 < h2 < ... hk-1 < hk > hk+1 > > hn1 > hn i n plus hi < hj pentru oricare i < k i k < j.
Deoarece o asemenea logic este greu de combtut, iar agenii nu au aerul c vor s glumeasc,
persoanele care ateapt la coad vor accepta toate mutrile impuse de ctre acetia.
Cerine
Cunoscnd numrul de persoane n i nlimile h1, h2, , hn ale acestora s se scrie un program care
determin :
1. Poziia persoanei celei mai nalte n rndul iniial, n cazul n care nu sunt necesare operaii de
mutare.
2. Numrul minim de mutri necesare pentru ca rndul de persoane s prezinte un risc minim de
securitate.
Date de intrare
Pe prima linie a fiierului de intrare risc.in se gsete numrul natural p a crui valoare poate fi doar
1 sau 2.
Pe a doua linie a fiierului de intrare se afl numrul natural n cu semnificaia din enun.
Pe a treia linie se gsesc n numere naturale, distincte: h1, h2, , hn, separate prin cte un singur spaiu,
reprezentnd nlimile persoanelor.
Date de ieire
Fiierul de ieire este risc.out.
Dac valoarea lui p este 1 atunci se va rezolva numai cerina 1. n acest caz, fiierul de ieire va
conine pe prima linie un numr natural poz ce reprezint poziia persoanei celei mai nalte n
rndul iniial. Dac rndul iniial nu respect condiiile de risc minim de securitate, atunci poz
este -1.
Dac valoarea lui p este 2 se va rezolva numai cerina 2. n acest caz fiierul de ieire va conine
pe prima linie un numr natural m, reprezentnd numrul minim de mutri necesare pentru a
obine risc minim de securitate.
_____________
Problema 2 risc

pag. 1 din 2

Ministerul Educaiei i Cercetrii tiinifice


Olimpiada de Informatic - LICEU - etapa naional
Trgovite, Dmbovia, 3-8 aprilie 2015
Ziua 1
Sursa : risc.pas, risc.cpp, risc.c

Clasa a IX-a

Restricii i precizri

1 n 100 000
1 h1, h2, hn 100 000
Persoana cea mai nalt ntr-o configuraie cu risc minim de securitate poate fi plasat pe oricare dintre
poziiile 1...n
Pentru 50% din teste, n 2000, iar pentru alte 40% din teste, n 10 000
Pentru rezolvarea corect a primei cerine se acord 20 de puncte, iar pentru cerina a doua se acord 80 de
puncte.

Exemple
risc.in

risc.out

1
4
35 20 10 1

p = 1, deci se rezolv numai cerina 1.


Rndul ndeplinete condiiile de risc minim de securitate.
Persoana cea mai nalt se gseste pe poziia poz = 1.

1
6
1 8 12 20 15 10

-1

p = 1, deci se rezolv numai cerina 1.


Rndul NU ndeplinete condiiile de risc minim de securitate.
irul nlimilor nu respect condiia ca toate valorile
nlimilor din dreapta poziiei persoanei celei mai nalte s fie
mai mari dect toate valorile nlimilor din stnga acesteia.
Deci poz = -1.

2
5
2 8 4 20 16

p = 2, deci se rezolv numai cerina 2.


Se mut persoana de nlime 8 la sfritul rndului.
Deci m = 1

2
6
3 19 7 30 10 25

p = 2, deci se rezolv numai cerina 2.


Prima operaie: se mut persoana de nlime 19 la sfritul
rndului. Rndul devine: 3 7 30 10 25 19
A doua operaie: se mut persoana de nlime 10 la sfritul
rndului.
Rndul devine: 3 7 30 25 19 10
Deci m = 2

Explicaii

Timp maxim de execuie: Linux:


0,02 secunde/test;
Windows: 0,2 secunde/test;
Memorie total disponibil 4 MB
Dimensiunea maxim a sursei: 10 KB.

_____________
Problema 2 risc

pag. 2 din 2