Nivelul concursului: Național
http://www.isjialomita.ro/oni2014/
Grupe
Clasa a V-a Clasa a VI-a Clasa VII-a Clasa VIII-a Clasa a IX-a Clasa a X-a Clasele XI-XII Juniori#1206
Placa
Un gard este format din mai multe plăci dreptunghiulare. Fiecare placă este, la rândul ei, construită din NxM
cărămizi. Una dintre plăci ridică o problemă, deoarece este deteriorată. Placa este reprezentată pe hârtie cu ajutorul unei matrice cu N
linii și M
coloane, numerotate de la 1
la N
, respectiv de la 1
la M
. Matricea conține doar valori 0
și 1
, și respectă următoarele reguli:
1
indică prezența în aceea poziție a unei cărămizi, iar un element egal cu 0
indică absența ei;1
și linia N
conțin numai valori egale cu 1
, pentru că marginea de sus și cea de jos a plăcii este intactă;1
, situat în interiorul matricei, se poate ajunge pe linia 1
sau pe linia N
sau pe amândouă, mergând doar în sus sau doar în jos, parcurgând numai valorile egale cu 1
;1
).Se dorește modificarea plăcii și pentru aceasta se pot șterge din matrice maximum K
coloane alăturate. După ștergere se alipesc coloanele rămase și se deplasează pe verticală partea de sus a plăcii spre cea de jos, până când se va forma o coloană stabilă.
Să se determine înălțimea minimă Hmin
pe care o poate avea placa ștergând cel mult K
coloane alăturate. Identificați numărul minim de coloane alăturate care trebuie șterse pentru a obține înălțimea Hmin
.
ONI GIM 2014, Clasa a VII-a
#1130
Codat
Se consideră un șir de N
numere naturale, notate x
1
, x
2
, x
3
,…, x
N
. Definim pentru orice pereche de indici i, j, 1 ≤ i ≤ j ≤ N
, distanța între elementele x
i
și x
j
ca fiind egală cu j – i
.
Acest șir va fi codificat după următoarele reguli:
-1
.Scrieți un program care codifică un șir de N
valori, după regulile descrise.
ONI GIM 2014, Clasa a VII-a
#1205
Nod
Pe vremea maurilor, transmiterea unor mesaje codificate între două persoane se făcea folosind un cifru numit nod. Cele două persoane alegeau în secret o poveste. Aceasta era scrisă într-o carte folosind litere mici și mari ale alfabetului englez, pe P
pagini, numerotate de la 1
la P
, fiecare conținând exact R
rânduri, numerotate în cadrul fiecărei pagini de la 1
la R
, iar fiecare rând fiind format din exact C
cuvinte, numerotate în cadrul fiecărui rând de la 1
la C
.
Un cuvânt al mesajului de transmis era codificat prin poziția sa în povestea aleasă de cei doi, folosind trei numere scrise cu cifre romane, ce indicau în ordine: numărul paginii, numărul rândului în cadrul paginii, respectiv al cuvântului în cadrul rândului.
Mesajul astfel codificat era scris pe trei linii. Pe prima linie erau scrise numerele paginilor, pe a doua linie numerele rândurilor, iar pe a treia linie erau scrise numerele de ordine ale cuvintelor.
Presupunem că mesajul este format din primul cuvânt de pe al cincilea rând al celei de a doua pagini și din al patrulea cuvânt de pe rândul al doilea al primei pagini. Mesajul putea fi transmis pe trei linii în modul următor:
II I
(numerele paginilor)V II
(numerele rândurilor)I IV
(numerele cuvintelor)Cifrele romane sunt scrise cu majusculele M
, D
, C
, L
, X
, V
, I
, iar valorile corespunzătoare lor sunt în ordine: 1000
, 500
, 100
, 50
, 10
, 5
, 1
. Valoarea unui număr scris cu cifre romane se calculează parcurgând de la stânga la dreapta cifrele numărului astfel:
De exemplu pentru numărul MCDXLVI
scris cu cifre romane, se obține valoarea 1446
în sistem zecimal, astfel: 1000-100+500-10+50+5+1
, iar pentru numărul XXI
scris cu cifre romane se obține valoarea 21
în sistemul zecimal astfel: 10+10+1
.
Cunoscându-se textul poveștii ales de cei doi și mesajul codificat de ei scrieți un program care rezolvă următoarele două cerințe:
a) Rescrie mesajul codificat folosind scrierea cu cifre din sistemul zecimal.
b) Afișează toate cuvintele mesajului decodificat în ordinea în care acestea apar în poveste.
ONI GIM 2014, Clasa a VII-a