Olimpiada Local de Informatic subiecte 25 ianuarie 2014
Clasa a IX-a Problema 1 Rochie colorate 100 puncte Un croitor dorete s fac nite rochii mai deosebite. El are la dispoziie n tipuri de material, codificate prin numere de la 1 la n i aranjate n aa fel nct s rezulte o combinaie coloristic frumoas dac sunt luate n ordinea stabilit. Pentru confecionarea fiecrei rochii folosete doar k tipuri de material, unde kn, un metru din fiecare tip. El ar dori s nceap confecionarea rochiilor de la primul material i s continue cu acest model pn unul din cele k materiale (sau toate) se epuizeaz. Croitorul ar dori totui s tie dac reuete s termine toate tipurile de material dup confecionarea rochiilor. Ajutai-l voi s calculeze acest lucru. Date de intrare Datele de intrare se citesc din fiierul de intrare ROCHII.IN, n care pe prima linie se afl scris numrul natural n, pe a doua linie este scris numrul natural k, iar pe a treia linie sunt cele n dimensiuni ale celor n tipuri de material. Date de ieire Datele de ieire vor fi scrise n fiierul ROCHII.OUT. Dac problema nu admite soluie, n fiierul de ieire se va scrie mesajul Imposibil, altfel se va scrie o succesiune de numere ce reprezint codul materialului de la care ncepe selecia. Restricii i precizri 2 n 1000; 1 k n; 0 cantitatea materialului i 100. Exemple ROCHII.IN ROCHII.OUT 8 Imposibil 4 1 2 3 4 0 0 0 0
Profesori propuntori Du Laura i Popa Mirela Colegiul Spiru Haret Ploieti Inspectoratul colar Judeean Prahova Olimpiada Local de Informatic subiecte 25 ianuarie 2014 Clasa a IX-a Problema 2 Numere 100 puncte Se d o baz de numeraie b cuprins ntre 2 i 36 i un numr natural n, de maxim 500 de cifre n baza b. S se calculeze numrul n, scris n baza 10. Sunt disponibile dou metode de reprezentare a cifrelor ntr-o baz oarecare: n codificarea direct, cifrele 0, 1, , 9, au semnificaia obinuit. n codificarea literal, literele a, b, , z sau A, B, , Z, completeaz cifrele de la 10 la 35 astfel: Literele a sau A reprezint cifra 10 ntr-o baz de numeraie b mai mare sau egal cu 11. Literele b sau B reprezint cifra 11 ntr-o baz de numeraie b mai mare sau egal cu 12. i aa mai departe, pn la literele z sau Z care reprezint cifra 35 n baza 36.
Fiierul de intrare numere.in conine pe prima linie baza de numeraie b i pe a doua linie, numrul n scris n baza b, folosind cele dou codificri posibile ale cifrelor. Fiierul de ieire numere.out conine pe prima linie numrul n scris n baza 10.
Evaluare: 10 teste, a cte 10 puncte fiecare. Timp de execuie: 50 milisecunde.
Profesor propuntor Radu Aurelian, Colegiul Spiru Haret Ploieti Inspectoratul colar Judeean Prahova Olimpiada Local de Informatic subiecte 25 ianuarie 2014 Clasa a X-a Problema 1 Bila 100 puncte
Fie un teren dreptunghiular codificat printr-o matrice A cu N linii i M coloane. Fiecare element al matricii este un numr natural reprezentnd altitudinea respectivei poriuni de teren. Se presupune c o bil pornete cu viteza Vo din punctul de coordonate (L, C) i se poate deplasa ntr-o poriune nvecinat de teren pe cele patru direcii: sus, jos, stnga, dreapta. Dac prin deplasare bila coboar K uniti de nivel atunci viteza sa crete cu K uniti de vitez. Dac prin deplasare bila urc K uniti de nivel atunci viteza sa scade cu 2*K uniti de vitez. n plus, n toate cazurile, din cauza frecrii, viteza scade cu o unitate de vitez. Bila se poate deplasa ntr-o poriune nvecinat de teren doar dac viteza rmne strict pozitiv. Cerin: Determinai, dac exist, viteza maxim cu care bila poate ajunge ntr-o poriune de teren de pe marginea matricii.
Date de intrare: fiierul bila.in - pe prima linie valorile N M L C Vo separate prin cte un spaiu. - pe fiecare din urmtoarele N linii cte M valori reprezentnd nlimile de pe linia corespunztoare din matrice, separate prin cte un spaiu.
Date de ieire: fiierul bila.out - pe o singur linie valoarea MAX reprezentnd viteza maxim sau valoarea -1 dac bila nu poate ajunge pe nici o cale la marginea matricii.
Restricii i precizri: 1N, M100 ; 1LN ; 1 CM. 0A[I, J]1000 oricare (I, J). 1V2000. Toate valorile sunt numere ntregi.
Explicaie: Drumul optim este: (3, 3)->(3, 2)->(3, 1)->(2,1)->(1,1)->(1, 2)->(1, 3)
Timp de execuie: 1 secund/test.
Profesor propuntor Radu Viinescu Colegiul Naional I.L.Caragiale Ploieti
Inspectoratul colar Judeean Prahova Olimpiada Local de Informatic subiecte 25 ianuarie 2014 Clasa a X-a Problema 2 Putere 100 puncte Doi seismologi au creat un algoritm foarte rapid pentru calculul puterii unui numr. Problema era simpl: dndu-se x i n, n numr natural, s se calculeze valoarea x n (x la puterea n). Algoritmul propus de ei este cel de mai jos: Vector rest[NMAX] Pasul 1: citeste x,n; Pasul 2: pozitie = 0 Pasul 3: daca n este 0, atunci y=1 Pasul 4: altfel Pasul 5: cat timp n>1 executa Pasul 6: rest[pozitie] = n modulo 2 Pasul 7: n = n div 2 Pasul 8: pozitie = pozitie + 1 Pasul 9: y = x Pasul 10: cat timp pozitie > 0 executa Pasul 11: pozitie = pozitie 1 Pasul 12: y = y*y Pasul 13: daca rest[pozitie] este 1, atunci y=y*x Pasul 14: scrie y Unde: rest[] este un vector de ntregi de dimensiune NMAX care ncepe la poziia 0 operatorul = este operatorul de atribuire (:= din Pascal) operatorul modulo este restul mpririi ntregi (mod din Pascal sau % din C++) operatorul div este ctul mpririi ntregi (div din Pascal sau / din C++) ramura altfel de la pasul 4 execut paii 5,9,10 repetiia din pasul 5 execut paii 6,7,8 repetiia din pasul 10 execut paii 11,12,13 Totui, la implementare, ei au ntmpinat doua greuti. Prima dintre ele, alocarea, este legat de ct de mare trebuie s fie NMAX, astfel nct s se poat calcula x n , pentru un n dat. i a doua, cte operaii critice de nmulire (operatorul *) efectueaz algoritmul, tot pentru o putere n dat. S i ajutm s rezolve cele dou probleme. Date de intrare: n fiierul putere.in, se d numrul natural n, n numr zecimal cu maxim 1000 de cifre. Date de ieire: n fiierul putere.out, apar, pe prima linie, numrul minim de elemente pentru vectorul rest[] (valoarea pentru NMAX), necesar efecturii ridicrii la puterea n i numrul de operaii de nmulire efectuate de algoritm pentru aceeai putere n, desprite printr-un spaiu. Exemple: putere.in putere.out 1544 10 12 96534125345643564524365534254 96 146 10 3 4 Evaluare: 10 teste, fiecare 10 puncte, cte 5 puncte pentru fiecare din cele dou valori de ieire corecte. Timp de execuie: 50 milisecunde (0,05 s) / test Profesor propuntor Radu Aurelian, Colegiul Spiru Haret Ploieti Inspectoratul colar Judeean Prahova Olimpiada Local de Informatic subiecte 25 ianuarie 2014 CLASA a XI-a-a XII-a Problema 1 Autostrzi 100puncte Conform planului de guvernare, ministrul marilor proiecte din Renania a cerut consilierilor si sa ntocmeasc o harta cu toate autostrzile pe care populaia ar dori sa le construiasc in urmtorii 10 ani. In urma studiului de fezabilitate au calculat si costurile necesare construciei fiecrei autostrzi propuse. Problema ministrului este ca nu are la dispoziie dect o suma de bani S si, in plus, el dorete sa mearg numai pe autostrada atunci cnd va inspecta lucrrile, aa ca nici o autostrada nu trebuie sa nceap a fi construita dect daca se poate ajunge la ea mergnd doar pe autostrzi construite. Avnd aceasta viziune, el a solicitat un plan de construcie al autostrzilor care sa ndeplineasc urmtoarele cerine: - Construirea autostrzilor sa nceap din capitala tarii, numerotata pe harta cu 1; - Sa nu se depaseasca bugetul disponibil (S) - Prioritatea 0 a guvernului este ca numrul de orae care vor fi conectate prin noua reea de autostrzi sa fie cat mai mare, evident la un pre cat mai mic posibil. Ministrul, speriat de publicitatea negativa din presa, mai solicita drumarilor sa continue construcia cu acele autostrzi planificate care costa cel mai puin dar numai daca toate oraele au putut fi conectate, creznd ca aa va reui sa se laude la sfrit de mandat cu cel mai mare numr de autostrzi finalizate si sa nu-i supere pe acei ceteni din oraele pana la care nu s-au putut construi autostrzi; - O noua autostrada nu va fi nceputa dect daca exista suficieni bani pentru finalizarea ei. Date de intrare: Fiierul auto.in conine -pe prima linie un numr n (n<=200) reprezentnd numrul de orae din Renania - pe a doua linie un numr S reprezentnd suma de bani disponibila, exprimata in milioane de Ren, moneda naionala a Renaniei(S<=1000000000) - pe urmtoarele linii triplete de numere (x,y,z), numere naturale cu maxim 4 cifre reprezentnd oraele si costul construirii unei autostrzi intre ele Date de ieire: Fiierul auto.out conine Lista autostrzilor construite sub forma tripletelor (x,y,z) din proiectul de dezvoltare Pe ultima linie din fiier se vor afia, separate prin spatii, 3 numere, reprezentnd Numrul de orae in care se poate ajunge mergnd numai pe autostrzi Numrul de autostrzi construite Suma de bani cheltuita pentru realizarea efectiva a proiectului Exemplu: Auto.in 6 110 1 2 20 1 5 40 2 3 10 2 5 15 2 4 40 3 5 6 3 4 50 5 6 8 Auto.out 1 2 20 2 3 10 3 5 6 5 6 8 2 4 40 2 5 15 6 6 99 Auto1.in 6 80 1 2 20 1 5 40 2 3 10 2 5 15 2 4 40 3 5 6 3 4 50 5 6 8 Auto1.out 1 2 20 2 3 10 3 5 6 5 6 8 5 4 44 Profesor propuntor Constantin Adriana Colegiul Naional Nichita Stnescu Ploieti Inspectoratul colar Judeean Prahova Olimpiada Local de Informatic subiecte 25 ianuarie 2014 CLASA a XI-a-a XII-a Problema 2 Surjecie 100 puncte
Se dau numere naturale n i m, . S se calculeze numrul funciilor surjective de la o mulime cu n elemente la o mulime cu m elemente. Se tie c dou funcii i sunt diferite ntre ele dac exist din mulimea , astfel nct .
Date de intrare: n fiierul surjectie.in, se dau, pe prima linie, valorile n i m, separate printr-un spaiu. Date de ieire: n fiierul surjectie.out, apare, pe prima linie, numrul surjeciilor de la n la m.