Model subiect olimpiada de informatică, clasa a 9-a, faza județeană

1 – cifre  pag. 1 din 2    
 
Problema 1 – cifre                         100 puncte 
Un indicator numeric este un dispozitiv de afişaj electronic destinat afişării unei cifre zecimale.  
Acesta conține 7 segmente notate cu a, b, c, d, e, f, g, ca în figura alăturată. 
Afişarea unei cifre se face prin aprinderea unei combinații de segmente conform tabelului:  
Cerință 
Cunoscând un număr natural N afișat cu ajutorul mai multor indicatoare numerice, să se scrie un program care 
determină: 
1. Numărul de segmente aprinse pentru afișarea numărului N.  
2. Numărul de numere distincte mai mari decât N,ce se pot forma prin aprinderea a cel puțin unui segment 
în plușfață de cele utilizate pentru afișarea numărului N,fără a folosi alte indicatoare numerice, și fără a 
stinge nici un segment dintre cele deja aprinse. 
Date de intrare  
Fișierul de intrare este cifre.in 
Pe prima linie a fişierului de intrare se găsește numărul natural V a cărui valoare poate fi doar 1 sau 2.  
Pe a doua linie a fișierului de intrare se găsește numărul natural N.  
 
Date de ieşire 
Fișierul de ieșire este cifre.out 
Dacă valoarea lui V este 1 atunci f işierul de ieşire va conţine pe prim a linie un singur număr natural ce 
reprezintă numărul de segmente aprinse pentru afișarea numărului N. 
Dacă valoarea lui V este 2 atunci f işierul de ieşire va conține pe prima linie un singur num ăr natural 
reprezentând numărul de numere distincte mai mari decât N,ce se pot forma prin aprinderea a cel pu țin unui 
segment în plușfață de cele utilizate pentru afișarea numărului N,fără a folosi alte indicatoare numerice. 
 
Restricţii şi precizări 
• 10 ≤ N ≤ 10 
19 
• 20% din teste vor avea valoarea V = 1, iar 80% din teste vor avea valoarea V = 2. 

2 – pic   pag. 1 din 2    
 
 
Problema  2 -  pic 100 puncte 
Alex s -a anga jat în vacanța de vară ca barman. Pentru că îi pl ace să 
transforme munca la bar într -un spectacol , uneori aranjează mai multe 
pahare identice ca formă și dimensiune , dar de  capacități diferite , sub 
forma unei stive.  
Un pahar din stivă, cu excepția celor de la bază , se sprijină pe exact două 
pahare din rândul de mai jos. Paharele sunt numerotate ca în imaginea 
alăturată. Nivelurile din stivă sunt deasemenea numerotate, începând cu 1, 
de la vârf, adică paharul 1 se află pe nivelul 1, paharele 2 și 3 pe nivelul 2, 
paharele 4, 5 și 6 sunt pe nivelul 3, ș.a.m.d. 
Alex toarnă în fiecare secundă câte un mililitru de apă (o picătură) în paharul numărul 1. Paharele au o proprietate 
ciudată atunci când sunt pline: primul mil ilitru care ajunge într-un pahar plin se va scurge instantaneu în paharul aflat 
imediat în stânga sa pe râ ndul de dedesu bțurmătorul mililitru se va scurge instantaneu în paharul aflat imediat în 
dreapta sa pe rândul de dedesubt și tot așa, alternativ câte o picătură în cele două pahare.  
De exemplu când paharul 2 este plin, primul mililitru ce va ajunge în el se va scurge în paharul 4, următorul mililitru 
se scurge în paharul 5, al treilea mililitru se va scurge din nou în paharul 4, ș.a.m.d. 
Atunci când într-un pahar plin aflat la baza stivei ajunge un nou mililitru de apă, acesta se scurge instantaneu pe masă. 
 
Cerinţă 
Cunoscând numărul de pahare din rândul de la baza stivei și faptul că stiva este completă  (toate rândurile conțin 
numărul maxim de pahare ce se pot așeza după regula de mai sușiar pe cel mai de sus rând se găsește un singur 
pahar), să se scrie un program care determină: 
1. Care este nivelul minim (cel mai de sus) care are suma capacităților tuturor paharelor de pe nivel maximă? 
2. Care este numărul minim de secunde necesar pentru a umple toate paharele folosind procedeul de scris mai sus și 
câți mililitri de apă se risipesc (se scurg pe masă) în acest caz? 
 
Date de intrare 
Pe prima linie a fișierului de intrare pic.in se găsește un număr natural V a cărui valoare poate fi doar 1 sau 2.  
Pe a doua linie a fișierului de intrare se găsește un singur număr natural N reprezentând numărul de pahare din r ândul 
de la baza stivei. 
Pe a treia linie a fișierului de intrare se găsesc M = N*(N+1)/2 numere naturale C1,C2,...,CM separate  prin câte 
un spațiu, Ci reprezentând capacitatea (în mililitri) a paharului numărul i din stivă.  
 
Date de ieşire 
Dacă valoarea lui V este 1 atunci fişierul de ieşire pic.out va conţine pe prima linie un singur număr natural ce 
reprezintă numărul de ordine al nivelului minim ( cel mai de sus ) care are suma capacităților tutu ror paharelor de pe 
nivel maximă. 
Dacă valoarea lui V este 2 atunci fişierul de ieşire va conţine pe prima linie două numere naturale separate printr-un 
singur spațiu reprezentând numărul minim de secunde scurse până când toate paharele din stivă sunt pline și  respectiv 
numărul de mililitri de apă risipiți (ajunși pe masă) în acel moment. 
 
Restricţii 
• 2 ≤ N ≤ 50 
• 20% din teste vor avea valoarea V = 1, iar 80% din teste vor avea valoarea V = 2. 
• 35% din teste vor avea N ≤ 17, iar 65% din teste vor avea N > 17. 
• 1 ≤ C1,C2,...,CM ≤ 25 
 
Ministerul Educaţiei Naționale și Cercetării Științifice 
Olimpiada Județeană de Informatică Clasa a IX-a                                        
12 martie 2016  
Sursa: ID2.c, ID2.cpp, ID2.pas 
 
_____________ 
Problema 2 – pic   pag. 2 din 2