Sunteți pe pagina 1din 2

UNIVERSITATEA DIN BUCURESTI

FACULTATEA DE MATEMATIC SI INFORMATIC


DOMENIUL INFORMATIC
SESIUNEA SEPTEMBRIE 2011

Proba scris
pentru admiterea la examenul de MASTERAT

Subiectul 1
Se citesc de la tastatura elementele tablourilor a=(a
0
,...,a
m-1
) i b=(b
0
,...,b
n-1
)
cu elemente numere ntregi.
ntre elementele fiecrui tablou n parte se pot efectua orice operaii, dar singurele
operaii permise ntre un element al lui a i unul al lui b sunt compararea i interschimbarea lor.
Se urmrete ca, folosind numai operaii permise, n final toate elementele lui a s fie
mai mici sau egale cu elementele lui b.
Se cer urmtoarele:
1) s se scrie un program care s realizeze scopul urmrit cu un numr ct mai mic de
interschimbri a
i
b
j
; vor fi afiate interschimbrile i numrul lor;
2) s se furnizeze o descriere formal a numrului minim de interschimbri necesare;
3) s se demonstreze optimalitatea algoritmului folosit n program.

Subiectul 2

Se da un numar n natural.
a. Sa se afiseze, printr-un algoritm eficient, toate numerele prime mai mici ca n.
b. Sa se calculeze complexitatea algoritmului gasit.
c. Este algoritmul gasit unul polinomial sau unul exponential? Justificati raspunsul.

Subiectul 3

Se da un graf neorientat conex G cu n varfuri, prin matricea de adiacenta si k un intreg astfel
incat 1kn, n3 (n, k si matricea de adiacenta se citesc de la tastatura).
a) Sa se arate ca G contine un subgraf conex cu k varfuri.
b) Sa se scrie un program care sa determine efectiv multimea de varfuri a unui subgraf
conex cu k varfuri al lui G.

Subiectul 4

a) S se creeze un dicionar electronic de acronime impreun cu expresiile pe care le
abreviaz. Dicionarul va conine n expresii (nN, 2n100) i va fi creat cu ajutorul unui
arbore binar de cutare n care fiecare nod va memora att acronimul ct i expresia
lexical de la care provine acesta.
b) S se determine existena unui anumit acronim in dicionar. n cazul n care acronimul
cutat exist, se vor afia succesorul i expresia lexical corespunztoare apoi se va terge
acronimul cutat din dicionar i se va afia lista acronimelor i expresiilor rmase, n ordine
lexicografic.
Observaii
1. Fiecare expresie lexical poate conine maxim 50 de caractere.
2. Fiecare acronim poate conine maxim 20 de caractere.
3. Dicionarul va fi generat prin inserarea cuvintelor n ordinea in care apar n fiierul de
intrare.
4. Succesorul unui acronim se determin relativ la secvena ordonat lexicografic a cuvintelor
din dicionar.

Exemplu:
acronim.in

acronim.out

8
JSE=>JavaScript Encoding
ESP=>Enhanced Serial Port
MSB=>Most Significant Byte
CDRAM=>Cached Dynamic RAM
EMI=>Electro-Magnetic Interference
CDRAM=>Cached Dynamic RAM
AIFF=>Audio Interface File
BASM=>Built in AsseMbler
BASM
CDRAM=>Cached Dynamic RAM
AIFF=>Audio Interface File
CDRAM=>Cached Dynamic RAM
EMI=>Electro-Magnetic Interference
ESP=>Enhanced Serial Port
JSE=>JavaScript Encoding
MSB=>Most Significant Byte

Subiectul 5
Un numar real x(0,1) se numeste b-bun daca, scris in baza b2 are numai cifre pare.
a) Sa se scrie un program cu datele de intrare numere intregi pozitive b2 si p,q unde pq
si care decide daca fractia p/q este un numar b-bun.
b) Sa se justifice algoritmul din punct de vedere matematic.


Not: Subiectele se vor rezolva ntr-un limbaj de programare studiat n facultate (C/C++/Java).
Pentru fiecare solutie se va preciza argumentat complexitatea timp a algoritmilor folositi si se vor
explica informal detaliile de implementare sub form de program: variabile, structuri de date,
structuri iterative, instructiuni conditionale. Pentru solutii care nu respect cerinta de
complexitate se vor acorda punctaje partiale.


Se vor trata 2 subiecte, la alegere, pe coli separate.
Timp de lucru: 3 ore.

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