Sunteți pe pagina 1din 6

MINISTERUL EDUCAȚIEI NAȚIONALE

Colegiul Național “Vladimir Streinu” Găești CLASA 10


OLIMPIADA LOCALĂ DE INFORMATICĂ
Sesiunea FEBRUARIE 2020 ID_NR-PROBLEMĂ.CPP
_____________________________________________________________________________________________________________
Problema 1 – castel 90 de puncte

Arheologii au descoperit pe un platou muntos greu accesibil ruinele unui castel medieval, pe care l-au fotografiat din elicopter,
obţinând harta digitizată a acestuia. Harta este memorată sub forma unui tablou bidimensional H, compus din NxN pătrate cu
latura egală cu unitatea, având ca elemente numere naturale între 0 și 15, care codifică forma pereţilor fiecărui pătrat unitar.
Dacă scriem numărul natural H[i][j] în baza 2, folosind exact 4 cifre binare, fiecare bit dă informații despre unul dintre
pereții posibil de construit pe fiecare latură a pătratului unitar din poziția (i,j), astfel:
• dacă bitul de pe poziția 0 are valoarea 1, atunci există perete pe latura vestică (latura din stânga);
• dacă bitul de pe poziția 1 are valoarea 1, atunci există perete pe latura sudică (latura de jos);
• dacă bitul de pe poziția 2 are valoarea 1, atunci există perete pe latura estică (latura din dreapta);
• dacă bitul de pe poziția 3 are valoarea 1, atunci există perete pe latura nordică (latura de sus);
• un bit de valoare 0 indică lipsa peretelui corespunzător acestuia;
Pentru un număr scris în baza 2, numerotarea cifrelor începe cu poziția 0, de la dreapta la stânga.
Castelul este interesant deoarece, pentru realizarea unei mai bune apărări, camerele ce-l compun sunt construite fie
independent, fie una în interiorul alteia. Orice camera este construită la o distanţă de cel puţin o unitate faţă de zidul ce
împrejmuieşte castelul sau faţă de pereţii altor camere.
Folosind harta, arheologii doresc să afle informaţii privind numărul camerelor şi camera de arie maximă. Prin arie a unei camere
se înţelege numărul pătratelor unitate cuprinse în interiorul pereților aceasteia, fără a socoti ariile camerelor construite în
interiorul ei.

Cerinţa
Cunoscând codificarea hărţii castelului, să se determine:
1. numărul total al camerelor din castel
2. aria maximă a unei camere
3. coordonatele colţurilor din stânga-sus, respectiv dreapta-jos a camerei cu aria maximă. Dacă există mai multe camere
având aceeaşi arie maximă, atunci se vor afişa coordonatele camerei având colţul din stânga-sus (lin1, col1) cu
lin1 minimă, iar la linii egale pe aceea cu col1 minimă.

Date de intrare
Datele de intrare se citesc din fişierul castel.in, care are următoarea structură:
• Pe prima linie se află numărul natural C, care poate fi egal cu 1, 2 sau 3, în funcţie de cerinţa ce trebuie rezolvată;
• Pe linia următoare se află numărul natural N, reprezentând dimensiunea hărţii;
• Pe următoarele N linii se găsesc câte N numere naturale din intervalul [0,15], separate prin câte un spaţiu, reprezentând
harta castelului.

Date de ieşire
Datele de ieşire se vor scrie în fişierul castel.out, astfel:
• Dacă C = 1, pe prima linie se va scrie numărul total al camerelor din castel;
• Dacă C = 2, pe prima linie se va scrie aria maximă a unei camere din castel;
• Dacă C = 3, pe prima linie se vor scrie 4 numere naturale lin1 col1 lin2 col2, separate prin câte un spaţiu,
reprezentând coordonatele colțurilor din stânga-sus, respectiv dreapta-jos ale camerei de arie maximă.

Restricţii şi precizări:
• 2 < n ≤ 100
• Se garantează că în castel există cel puţin o cameră;

Toate subiectele sunt obligatorii. Timpul de lucru efectiv alocat probei este de 4 ore. Punctajul maxim cumulat este de 300 de puncte, dintre care 30 de
puncte sunt acordate din oficiu.
MINISTERUL EDUCAȚIEI NAȚIONALE
Colegiul Național “Vladimir Streinu” Găești CLASA 10
OLIMPIADA LOCALĂ DE INFORMATICĂ
Sesiunea FEBRUARIE 2020 ID_NR-PROBLEMĂ.CPP
_____________________________________________________________________________________________________________
Exemplu

castel.in castel.out Explicaţíe


1 6
9
0 2 0 0 0 0 0 0 0
4 15 1 0 0 2 2 0 0
0 10 2 0 4 11 14 1 0
4 9 12 1 2 10 10 2 0
4 3 6 5 9 8 10 12 1
0 10 8 4 1 4 15 5 1
4 13 1 4 3 2 10 6 1
4 7 1 0 8 8 8 8 0
0 8 0 0 0 0 0 0 0

În figură este reprezentată harta castelului


codificat în fișierul de intrare.
Acesta conține 6 camere.
2 11 Aria maximă a unei camere este 11.
9
0 2 0 0 0 0 0 0 0
4 15 1 0 0 2 2 0 0
0 10 2 0 4 11 14 1 0
4 9 12 1 2 10 10 2 0
4 3 6 5 9 8 10 12 1
0 10 8 4 1 4 15 5 1
4 13 1 4 3 2 10 6 1
4 7 1 0 8 8 8 8 0
0 8 0 0 0 0 0 0 0
3 5 5 7 8 Camera cu aria maximă are coordonatele
9 (5,5) – (7,8)
0 2 0 0 0 0 0 0 0
4 15 1 0 0 2 2 0 0
0 10 2 0 4 11 14 1 0
4 9 12 1 2 10 10 2 0
4 3 6 5 9 8 10 12 1
0 10 8 4 1 4 15 5 1
4 13 1 4 3 2 10 6 1
4 7 1 0 8 8 8 8 0
0 8 0 0 0 0 0 0 0

Limită de timp: 0.2 secunde/test


Limită de memorie: 64 MB, din care 32 MB pentru stivă
Dimensiunea maximă a sursei: 30 KB

Toate subiectele sunt obligatorii. Timpul de lucru efectiv alocat probei este de 4 ore. Punctajul maxim cumulat este de 300 de puncte, dintre care 30 de
puncte sunt acordate din oficiu.
MINISTERUL EDUCAȚIEI NAȚIONALE
Colegiul Național “Vladimir Streinu” Găești CLASA 10
OLIMPIADA LOCALĂ DE INFORMATICĂ
Sesiunea FEBRUARIE 2020 ID_NR-PROBLEMĂ.CPP
_____________________________________________________________________________________________________________
Problema 2 insule 90 de puncte

Arhipelagul RGB este format din insule care aparţin ţărilor R, G şi B. Putem reprezenta harta arhipelagului ca o matrice
cu N linii şi M coloane cu elemente din mulţimea {0, 1, 2, 3} astfel:

▪ un element egal cu 0 reprezintă o zonă acoperită de apă


▪ un element egal cu 1 reprezintă o zonă de pământ aparţinând unei insule din ţara R
▪ un element egal cu 2 reprezintă o zonă de pământ aparţinând unei insule din ţara G
▪ un element egal cu 3 reprezintă o zonă de pământ aparţinând unei insule din ţara B

Se consideră că două elemente ale matricei sunt vecine dacă ele au aceeaşi valoare şi fie sunt consecutive pe linie, fie sunt
consecutive pe coloană. Două elemente aparţin aceleiaşi insule dacă ele sunt vecine sau dacă se poate ajunge de la un element
la celălalt pe un drum de-a lungul căruia oricare două elemente consecutive sunt vecine.

Pentru a încuraja relaţiile de colaborare dintre ţările R şi G, se doreşte construirea unui pod care să unească o insulă aparţinând
ţării R de o insulă aparţinând ţării G. Podul trebuie să respecte următoarele condiţii:

▪ să înceapă pe o zonă cu apă consecutivă pe linie sau coloană cu o zonă aparţinând ţării R;
▪ să se termine pe o zonă cu apă consecutivă pe linie sau coloană cu o zonă aparţinând ţării G;
▪ să traverseze numai zone acoperite cu apă;
▪ oricare două elemente consecutive ale podului trebuie să fie vecine;
▪ lungimea podului să fie minimă (lungimea podului este egală cu numărul de elemente traversate de pod).

Cerinta
Dată fiind harta arhipelagului să se determine câte insule aparţin fiecărei ţări, precum şi lungimea minimă a unui pod care să
satisfacă condiţiile din enunt.

Date de intrare
Fişierul de intrare insule.in conţine pe prima linie numerele naturale N şi M, separate prin spaţiu. Pe următoarele n linii este
descrisă harta arhipelagului. Pe fiecare dintre aceste n linii sunt scrise câte m valori din mulţimea {0, 1, 2, 3}; valorile nu sunt
separate prin spaţii.

Date de ieşire
Fişierul de ieşire insule.out va conţine o singură linie pe care vor fi scrise patru numere naturale separate prin
spaţii NR NG NB Lg, unde NR reprezintă numărul de insule aparţinând ţării R, NG numărul de insule aparţinând
ţării G, NB numărul de insule aparţinând ţării B, iar Lg lungimea minimă a podului.

Restricţii
▪ 1 ≤ N,M ≤ 100
▪ Se garantează că pe hartă există cel puţin un element 1, un element 2 şi un element 0.
▪ Se acordă 40% din punctaj pentru determinarea corectă a numărului de insule din fiecare ţară; se acordă punctaj integral
pentru rezolvarea corectă a tuturor cerinţelor.
▪ Începutul şi sfârşitul podului pot să coincidă.
▪ Pentru datele de test există întotdeauna soluţie.

Toate subiectele sunt obligatorii. Timpul de lucru efectiv alocat probei este de 4 ore. Punctajul maxim cumulat este de 300 de puncte, dintre care 30 de
puncte sunt acordate din oficiu.
MINISTERUL EDUCAȚIEI NAȚIONALE
Colegiul Național “Vladimir Streinu” Găești CLASA 10
OLIMPIADA LOCALĂ DE INFORMATICĂ
Sesiunea FEBRUARIE 2020 ID_NR-PROBLEMĂ.CPP
_____________________________________________________________________________________________________________
Exemplu

insule.in insule.out

6 7 4 2 3 4

1000320

0110313

3333000

2033000

2203011

2000010

Limită de timp: 0.2 secunde/test


Limită de memorie: 64 MB
Dimensiunea maximă a sursei: 30 KB

Toate subiectele sunt obligatorii. Timpul de lucru efectiv alocat probei este de 4 ore. Punctajul maxim cumulat este de 300 de puncte, dintre care 30 de
puncte sunt acordate din oficiu.
MINISTERUL EDUCAȚIEI NAȚIONALE
Colegiul Național “Vladimir Streinu” Găești CLASA 10
OLIMPIADA LOCALĂ DE INFORMATICĂ
Sesiunea FEBRUARIE 2020 ID_NR-PROBLEMĂ.CPP
_____________________________________________________________________________________________________________
Problema 3 zâna 90 de puncte

Castelul Zânei Spiriduşilor este construit pe o suprafaţă dreptunghiulară având n*m camere identice, de formă
pătratică, dispuse câte m pe direcţia Ox şi câte n pe direcţia Oy ca în desenul de mai jos în care n=3 şi m=6. Din
fiecare cameră se poate intra în orice cameră învecinată, cameră care are un perete comun cu acesta. Fiecare
cameră este identificată prin coordonatele sale, ca în figură.

În castel, trăiesc k spiriduşi împreună cu Zâna lor. Fiind în curând aniversarea zilei de naştere a Zânei, fiecare
spiriduş a pregătit câte un cadou pe care îl ascunde, nevăzut de ceilalţi, într-una din camerele castelului.
Tradiţia acestei sărbătoriri, impune următoarele reguli:

1. În căutarea cadourilor, Zâna porneşte din camera de coordonate (1,1). Ea se deplasează prin
camerele castelului cât timp în aceste camere nu se află niciun cadou.
2. Căutarea se încheie în momentul în care Zâna intră într-o cameră în care se află cel puţin un cadou.
Zână va primi toate cadourile aflate în acestă cameră, restul cadourilor vor dispărea.

Cerinţă
Scrieţi un program care să citească din fişierul zana.in numerele naturale n, m, k şi cele k coordonatele
ale camerelor în care spiriduşii au ascuns cadourile, şi care să determine:
a) numărul n1 maxim de cadouri pe care le poate primi Zâna în urma respectării regulilor;
b) numărului n2 al camerelor în care poate ajunge Zâna respectând regulile, camere ce conţin fiecare
câte n1 cadouri.

Date de intrare
Fișierul de intrare zana.in conţine pe prima linie cele trei numere naturale: n m k, separate prin câte un
spaţiu. Pe fiecare din următoarele k linii, câte una pentru fiecare spiriduş, sunt scrise câte două numere
naturale: i j, separate printr-un spaţiu, reprezentând coordonatele camerei în care spiriduşul curent a
ascuns cadoul.

Date de ieșire
Fișierul de ieșire zana.out va conține două linii. Pe prima linie se va scrie numărul natural n1 reprezentând
numărul maxim de cadouri pe care le poate primi Zâna. Pe cea de-a doua linie se va scrie numărul
natural n2, reprezentând numărul camerelor în care poate ajunge Zâna şi care conţin fiecare câte n1
cadouri.

Toate subiectele sunt obligatorii. Timpul de lucru efectiv alocat probei este de 4 ore. Punctajul maxim cumulat este de 300 de puncte, dintre care 30 de
puncte sunt acordate din oficiu.
MINISTERUL EDUCAȚIEI NAȚIONALE
Colegiul Național “Vladimir Streinu” Găești CLASA 10
OLIMPIADA LOCALĂ DE INFORMATICĂ
Sesiunea FEBRUARIE 2020 ID_NR-PROBLEMĂ.CPP
_____________________________________________________________________________________________________________
Restricții și precizări

• 1≤n≤180, 1≤n≤180, 1≤k≤30000


• 1≤i≤n, 1≤j≤m
• toate valorile din fișierul de intrare sunt numere naturale

Exemplu
zana.in zana.out

3 5 11
2
1 5
1 5 2
1 3
1 3
1 4
1 4
1 4
2 4
2 4
2 5
3 2

Explicație
Castelul are 3*5=15 camere. Coordonatele acestora sunt cele din figura 1, iar cadourile sunt dispuse ca în
figura următoare:

Zâna porneşte căutarea începând din camera de coordonate (1,1). Camera cu număr maxim de cadouri (3)
are coordonatele (1,4), dar zâna nu poate ajunge în acestă cameră, deoarece pentru a ajunge în acesta ea
trebuie să treacă prin una din camerele de coordonate (1,3), (2,4), (2,5) în care se află cadouri. Conform
regulamentului, căutarea se va încheia în una din aceste camere. Astfel zâna poate parcurge
camerele (1,1), (1,2), (1,3) sau (1,1), (1,2), (2,2), (2,3), (2,4), etc pentru a ajunge într-una din
cele n2=2 camere cu număr n1=2 maxim de cadouri.
Limită de timp: 0.2 secunde/test Limită de memorie: 64 MB Dimensiunea maximă a sursei: 30 KB

Toate subiectele sunt obligatorii. Timpul de lucru efectiv alocat probei este de 4 ore. Punctajul maxim cumulat este de 300 de puncte, dintre care 30 de
puncte sunt acordate din oficiu.