Sunteți pe pagina 1din 5

Listă propusă.

II.1 și II. 2 sunt propuneri doar pentru elevii înscriși la concursul Dan Barbilian. Ei vor rezolva câte probleme
pot din fișă.
Ceilalți vor rezolva 3 probleme din I și problema de la III. Vor încărca un pdf cu rezolvările lor. Fișierul va fi
salvat cu numele elevului.
I.
1. Scrieți un algoritm care citește un număr natural nenul n și care calculează suma S tuturor
numerelor distincte prefixe pentru n.
n=12345
13715
S-a citit numărul n=12345 iar suma calculată este S=13715 (=1+12+123+1234+12345).
2. Se citesc două numere naturale a și b. Afișați în ordine crescătoare primii b multipli nenuli ai
numărului a.
Restricții și precizări
1 ≤ a ≤ 100, 1 ≤ b ≤ 100
P3ntru 3 6 se va afișa 3 6 9 12 15 18
3. Pentru a se numerota paginile unei cărți s-au folosit n cifre. Câte pagini are cartea?
Se citește n, se afișează numărul de pagini.
Restricții și precizări
1 ≤ n ≤ 1.000.000
pentru fiecare test exista soluție.
numerotarea paginilor se face de la 1.
n=1791 se afișează 633 pagini
4. Cerința
Considerăm şirul a cu n numere naturale nenule distincte două câte două şi un număr x. Scrieţi
un program care determină poziţia pe care se va găsi numărul x în şirul a, dacă acesta ar fi
ordonat descrescător.
Date de intrare
Programul citește de la tastatură numerele n şi x, urmate de n numere naturale reprezentând
elementele şirului a.
Date de ieșire
Programul va afișa pe ecran poziţia determinată mai sus. Dacă numărul x nu se regăseşte în şir,
valoarea afişată va fi -1.
Restricții și precizări
1 ≤ n < 200.000
cele n numere citite vor fi mai mici decât 109
considerăm elementele şirului a numerotate de la 1 la n
9 13
26 2 5 30 13 45 62 7 79
Se va afișa 6
Dacă sortăm şirul a descrescător obţinem şirul (79,62,45,30,26,13,7,5,2). Valoarea 13 se află pe
poziţia 6.
5. Pentru ca datele clienţilor să fie transferate în mod securizat între server-ul unei bănci şi
bancomatele acesteia, banca deţine o cheie de criptare formată din mai multe coduri.
Pentru a fi corect, fiecare cod cu număr impar de cifre din cheia de criptare trebuie sa aibă
prima cifră mai mare decât ultima cifră. În cazul în care un astfel de cod este incorect, el poate
fi corectat interschimbând prima cifră cu ultima cifră a codului.
Cerinţă
Scrieţi un program care să citească o cheie de criptare formată din n coduri şi care să afişeze
codurile corectate.
Date de intrare
Citim un număr natural n reprezentând numărul de coduri din cheia de criptare, iar apoi citim
următoare cele n coduri, separate prin spaţii.
Date de ieşire
Afișăm n numere naturale separate prin câte un spaţiu, reprezentând în ordinea citirii codurile
corectate din cheia de criptare.
Restricţii
• 0 < n <= 20
• Codurile sunt numere naturale cu cel puţin două şi cel mult nouă cifre.
Exemplu
4
120 44 23144 1234567 se va afișa 120 44 43142 7234561

120 are număr impar de cifre, iar prima cifră-1 este deja mai mare decât ultima cifră-0
44 are număr par de cifre deci nu i se aplică regula de modificare
23144 are număr impar de cifre, prima cifră nu este mai mare decât ultima , deci se modifică
1234567 are număr impar de cifre, prima cifră nu este mai mare decât ultima, deci se modifică
6. Păcală, tocmai a fost ales primar în satul Păcălici. Cum în satul lui nu locuiesc decât familii care
au o legătură de rudenie cu noul primar, Păcală s-a gândit să numeroteze casele astfel încât să
ştie ce legătură de rudenie are cu un membru al familiei ce locuieşte în acea casă, şi câţi
barbaţi, femei şi copii locuiesc în fiecare casă.
Astfel toate casele au un număr format din 4 cifre, unde prima cifră (de la stânga la dreapta )
reprezintă gradul de rudenie cu Păcală (pot fi rude de gradul 1, 2 sau 3), a doua cifră reprezintă
numărul de bărbaţi ce locuiesc în acea casă (pot fi maxim 6 bărbaţi), a treia cifră reprezintă
numărul de femei (pot fi maxim 6 femei) şi în fine ultima cifră a numărului reprezintă numărul
de copii (maxim 9) ce aparţin familiei din acea casă.
Cerinţă
Ştiindu-se numărul de case din satul lui Păcală, precum şi numerele caselor să se afişeze câte
familii au legătură de rudenie de gradul 1, 2 şi 3 cu Păcală, precum şi numărul de bărbaţi,
femei, respectiv copii care trăiesc în satul lui Păcală.
Date de intrare un număr natural n reprezentând numărul de case, apoi n numere intregi cu
exact patru cifre reprezentând numerele caselor..
Date de ieşire Se vor afișa: pe prima linie numărul de rude de gradul 1, pe linia a doua numărul
de rude de gradul 2, iar pe linia a treia numărul de rude de gradul 3. Pe cea de a patra linie va fi
scris numărul de bărbaţi, pe a cincea numărul de femei, iar pe ultima linie numărul de copii.
Exemple
Intrare Iesire
6 3
1232 1
3215 2
2345 15
1325 17
3459 29
1123

II. 1
De ziua ei, Dora a primit cadou un telefon mobil cu cartelă pentru rețeaua favorită. Suma disponibilă pe
cartelă este de E Eurici dar oferta este grozavă pentru convorbiri. Astfel, pentru fiecare minut de convorbire
în care a fost sunată dintr-o altă rețea decât rețeaua ei, cartela se încarcă cu 1 Euric dar, dacă sună ea într-o
altă rețea, Dora va consuma câte 2 Eurici din creditul de pe cartela ei pentru fiecare minut de convorbire.
Între membrii rețelei Dorei, toate convorbirile sunt gratuite indiferent de durata convorbirii, fie că sună ea,
fie că este sunată.
Toate numerele din rețeaua Dorei au patru cifre și se termină cu cifra 9 iar numerele din alte rețele au tot
patru cifre și se termină cu cifra 5. Când sună Dora, ea formează întâi cifra 1 înaintea numărului pe care îl
apelează. Când este sunată, apare cifra 2 înaintea numărului de la care primește apelul.
Cerința
Scrieți un program care, știind E, valoarea inițială a creditului de pe cartela primită cadou, cele N numere
corespunzătoare convorbirilor pe care le-a avut Dora și duratele acestora exprimate în minute, să
determine valoarea creditului rămas pe cartelă la terminarea convorbirilor.
Date de intrare
Din prima linie a fișierului text alo.in se citesc E, valoarea creditului inițial de pe cartelă și N numărul de
convorbiri. Din următoarele N linii se citesc perechi de forma Nr D unde Nr – numărul corespunzător
convorbirii și D – durata acesteia.
Date de ieșire
În fișierul text alo.out se va scrie pe prima linie S-numărul de Eurici care sunt disponibili pe cartela Dorei
după cele N convorbiri.
Restricții și precizări
5 ≤ E ≤ 100
2 ≤ N ≤ 500
1 ≤ D ≤ 50
Convorbirile în care sună Dora se încadrează în limita creditului de pe cartelă de la momentul respectiv.
Exemplu
alo.in
10 5
12345 4
12439 15
21335 30
18375 10
22359 20
alo.out
12
Explicație
12345 4 – Dora sună la numărul 2345 care nu face parte din rețeaua ei și vorbește 4 minute. De pe cartelă
se consumă 4*2=8 Eurici
12439 15 – Dora sună la numărul 2439 din rețeaua ei și vorbește 15 minute gratis
II. 2//DB 2016
1. Se citesc de la tastatură mai multe șiruri de numere naturale, fiecare șir se termină cu valoarea -1.
Operația de citire se termină când se introduc două valori de -1 consecutiv.
Cerințe:
a) Determinați pentru fiecare șir un număr ce are număr maxim de cifre distincte. Dacă sunt mai
multe numere cu numar maxim de cifre distincte atunci sa se determine cel mai mic dintre ele.
Numerele determinate vor fi afisate cate unul pe rand.
b) Dintre numerele determinate la punctul a) determinati-l pe cel mai mare.
Date de intrare:
a) Numerele naturale din siruri, numere de maxim 9 cifre.
Date de ieşire:
a) Afișarea numerelor determinate pentru fiecare sir.
b) Afișarea numărului maxim din cele determinate
Restricţii şi precizări:
a) Toate numerele sunt naturale de maxim 9 cifre.
Exemplu:
Daca se citesc numerele:
Date de intare Date de iesire
23 476 106 223 46 -1 106( sunt doua numere cu numar maxim de cifre
47 446 445 222 -1 distinct 476 si 106 dar cel mic este 106)
1004 854 1245 234 1023 -1 -1 47 (avem 3 numere cu numar maxim de cifre
distincte: 47, 446, 445 dar cel mic este 47)
1023(avem 2 numere cu numar maxim de cifre
distincte: 1245 si 1023 iar cel mic este 1023)
1023 (cel mai mare dintre 106,47,1023)

Punctaj
a) 10 p oficiu
b) Pentru cerinta a) 70 p – 10 p pentru citirea sirurilor; 20 p algoritm cifre distincte; 10 p pentru
numar maxim de cifre; 10 p determinare numar; 20 p pentru determinare cel mai mic dintre
ele.
c) Pentru cerinta b) 20 p
III.

S-ar putea să vă placă și