Subiect și barem
Sursa: Facultatea de Informatică UVT – arhiva admiterii
Acest subiect nu are un barem public asociat.
Despre acest subiect
iulie · Sesiunea iulie; subiect oficial
Sursa documentelor: Facultatea de Informatică UVT – arhiva admiterii. Pentru acest subiect nu este disponibil un barem public.
Subiectul în format text
Text extras automat din documentul original. Pentru formule, tabele, imagini și așezarea răspunsurilor, verifică întotdeauna PDF-ul.
Subiect · 11 pagini
Subiect · pagina 1
Concurs de admitere Facultatea de Matematic˘a s, i Informatic˘a Universitatea de Vest din Timis, oara Sesiunea Iulie, 2023 1. Timpul total de lucru: 3 ore 2. Toate subiectele sunt obligatorii! 3. Citit, i cu atent, ie informat, iile legate de tipurile de întreb˘ari, prezentate mai jos. Tipuri de întreb˘ari Pe foaia de concurs vet, i întâlni trei tipuri de întreb˘ari. Pentru a le recunoas, te mai us, or, în partea dreapt˘a vet, i reg˘asi un s, ablon pen- tru r˘aspunsuri, cu indicat, ii legate de tipul de întrebare. Tipul 1 Pentru întreb˘arile de acest tip vet, i marca pe foaia de concurs un singur r˘aspuns MODEL, marcat, i exact un r˘aspuns: 1 2 3 4corect. Le vet, i recunoas, te dup˘a modelul indicat în partea dreapt˘a a acestui rând. Tipul 2 Pentru întreb˘arile de acest tip vet, i marca pe foaia de concurs fie un singur r˘aspuns MODEL, marcat, i 1-2 r˘aspunsuri: 1 2 3 4 5corect, fie dou˘a r˘aspunsuri corecte. Le vet, i recunoas, te dup˘a modelul indicat în partea dreapt˘a a acestui rând. Tipul 3 Pentru întreb˘arile de acest tip vet, i marca pe foaia de concurs fie un singur r˘aspuns MODEL, marcat, i 1-3 r˘aspunsuri: 1 2 3 4 5corect, fie dou˘a r˘aspunsuri corecte, fie trei r˘aspunsuri corecte. Le vet, i recunoas, te dup˘a modelul indicat în partea dreapt˘a a acestui rând. Punctaj Fiecare variant˘a corect˘a de r˘aspuns valoreaz˘a exact 2 puncte. Dac˘a r˘aspunsul oferit identific˘a toate variantele corecte de r˘aspuns, la punctajul întreb˘arii se adaug˘a un bonus de 1 punct pentru r˘aspuns complet. Num˘arul maxim de puncte care poate fi obt, inut este 98. La acest punctaj se adaug˘a 10 puncte din oficiu. Problema 1: Un cod simplu Dac˘a PERICOL devine CIPROLE, s, i ROZALIU devine LARZIUO atunci TROPICE devine ...... Ciorn˘a, marcat, i exact un r˘aspuns: 1 2 3 4 1 RICOPET 2 IPTOCER " 3 PORECIT 4 OEPRTIC Explicat, ii Regula de codificare este: 1->3, 2->7, 3->4, 4->2, 5->1, 6->5, 7->6. (Prima liter˘a ajunge pozit, ia a treia, a doua pe pozit, ia a s, aptea, etc). Se aplic˘a regula de codificare de mai sus s, i se obt, ine: 1->3 , 2->7 , 3->4 , 4->2 , 5->1 , 6->5 , 7->6 ==> IPTOCER.
Subiect · pagina 2
2
Problema 2: O secvent, ˘a
Se consider˘a urm˘atoarea secvent, a de numere:
1, 50, 3, 46, 7, 36, 13, 16, x, y
Identificat, i valorile x s, i y de mai sus, apoi oferit, i r˘aspunsul corect.
1 x = 25, y = 6 Ciorn˘a, marcat, i exact un r˘aspuns:
1 2 3 42 x = 21, y = −18 "
3 x = 27, y = −6
4 x = 23, y = 18
Explicat, ii
Regula pentru pozit, iile impare: 3=1+2, 7=3+4, 13=7+6, urmeaz˘a 21=13+8.
Regula pentru pozit, iile pare: 46=50-(1+3), 36=46-(3+7), urmeaz˘a 16-(21+13)=-18
Problema 3: Selfies
Cinci persoane sunt aliniate pentru a fi fotografiate împreun˘a. Stângu st˘a la stânga lui Right, dar la dreapta lui Brilhante. Milieu st˘a
la dreapta lui Right, iar Estremo este între Right s, i Milieu.
Care dintre urm˘atoarele afirmat, ii este corect˘a:
1 Milieu st˘a la dreapta lui Estremo. " Ciorn˘a, marcat, i exact un r˘aspuns:
1 2 3 42 Brilhante este al doilea din dreapta.
3 Stângu este primul din stânga.
4 Right este penultimul din list˘a.
Explicat, ii
Alinierea este: Brilhante–Stângu–Right–Estremo–Milieu
Problema 4: Cuvinte
Un copil de 2 ani se joac˘a cu literele A, B, C, R, având 5 din fiecare. Dup˘a 2 ore de joac˘a ajunge la cuvântul BARCA. Câte cuvinte dis-
tincte de 5 litere poate forma în total? Dar folosind doar literele cuvântului BARCA? Ciorn˘a, marcat, i exact un r˘aspuns:
1 2 3 4
1 3125, 60
2 1024, 120
3 3125, 1024
4 1024, 60 "
Explicat, ii
Num˘arul de cuvinte de 5 litere care se pot construi folosind literele din mult, imea {A, B, C, R}
coincide cu num˘arul de funct, ii definite pe mult, imea cu 5 elemente (pozit, iile din cuvânt) care iau
valori dintr-o mult, ime cu 4 elemente (literele din mult, ime), adic˘a este 45 = 1024.
Num˘arul total de cuvinte care se pot construi folosind 5 litere distincte este 5! = 120. Dintre
literele cuvantului BARCA, dou˘a sunt identice (A), deci num˘arul de cuvinte distincte este 120/2 =
60
Problema 5: C˘art, i de joc
MisteryX are în mân˘a un pachet de c˘art, i de joc, pe care-l foloses, te pentru urm˘atorul joc: întoarce o carte de joc; dac˘a este o carte de
joc ros, ie, elimin˘a un num˘ar de c˘art, i de joc cel mult egal cu num˘arul de c˘art, i ros, ii întoarse pân˘a în acel moment. Jocul se termin˘a
atunci când nu mai are c˘art, i de joc în mân˘a.
Care dintre urm˘atoarele buc˘at, i de algoritm ar putea modela acest joc? Ciorn˘a, marcat, i exact un r˘aspuns:
1 2 3 4Subiect · pagina 3
concurs admitere fmi@uvt, iulie 2023 3 1 " n ← 0 cât timp exist˘a c˘art, i în pachet execut˘a întoarce cartea urm˘atoare dac˘a este o carte ros, ie atunci n ← n+1 pentru n times execut˘a elimin˘a o carte 2 cât timp exist˘a c˘art, i în pachet execut˘a întoarce cartea urm˘atoare cât timp cartea curent˘a este ros, ie execut˘a elimin˘a o carte 3 n ← 0 cât timp exist˘a c˘art, i în pachet execut˘a întoarce cartea urm˘atoare pentru n times execut˘a elimin˘a o carte dac˘a cartea a fost ros, ie atunci n ← n+1 4 n ← 0 cât timp exist˘a c˘art, i în pachet execut˘a întoarce cartea urm˘atoare cât timp cartea curent˘a este ros, ie execut˘a n ← n+1 elimin˘a o carte întoarce cartea urm˘atoare Explicat, ii Varianta (2) elimin˘a o singur˘a carte la întalnirea unei c˘art, i ros, ii. Varianta (3) elimin˘a cart, i s, i la întalnirea unei c˘art, i care nu este ros, ie, iar varianta (4) elimin˘a o singur˘a carte pentru fiecare carte ros, ie întoars˘a. As, adar doar prima variant˘a ar putea modela jocul. Problema 6: Pseudocod 1-2 Se consider˘a doi algoritmi scris, i în pseudocod, în care toate variabilele sunt numere întregi, iar m ≥ 1. procedura Var 1 suma ← 0 pentru i ← 1 to m execut˘a suma ← suma + i întoarce suma procedura Var 2 suma ← 0 i ← ⟨valoare_initiala⟩ cât timp ⟨conditie⟩ execut˘a i ← i + 1 suma ← suma + i întoarce suma Care din urm˘atoarele expresii pot înlocui ⟨valoare_initiala⟩ s, i ⟨conditie⟩, astfel încât Var Ciorn˘a, marcat, i 1-2 r˘aspunsuri: 1 2 3 4 52 s˘a produc˘a acelas, i rezultat cu Var I? 1 i ← 0 s, i i ≤ m − 1 " 2 i ← 0 s, i i < m + 1 3 i ← 1 s, i i ≤ m 4 i ← 1 s, i i < m − 1 5 i ← 0 s, i i < m " Explicat, ii Algoritmul Var 1 calculeaz˘a suma primelor m numere naturale. Întrucât în algoritmul Var 2 incrementarea lui i este înainte de actualizarea sumei, este necesar ca i s˘a fie init, ializat˘a cu 0 (r˘aspunsuri 1, 2 s, i 5); r˘aspunsul 2 nu este corect pentru c˘a se adun˘a s, i m + 1 la sum˘a.
Subiect · pagina 4
4 Problema 7: Doar sus sau dreapta O problem˘a relativ simpl˘a: estimat, i num˘arul total de drumuri, folosind doar direct, iile sus s, i dreapta, prin care se poate ajunge de la floarea albastr˘a la floarea mov. R R 1 mai put, in de 400 Ciorn˘a, marcat, i 1-2 r˘aspunsuri: 1 2 3 4 5 2 exact 256 3 exact 462 " 4 peste 400 " 5 exact 924 Explicat, ii Oricare dintre trasee necesit˘a 11 pas, i dintre care 6 pot fi efectuat, i pe orizontal˘a s, i 5 pe vertical˘a (în orice combinat, ie). Num˘arul de trasee este prin urmare C5 11 = C6 11 = 462. Problema 8: Doar verde În aceast˘a problem˘a vom ajuta un robot, el care se mis, c˘a pe suprafat, a din imagine, par- curgând toate p˘atratele verzi, s˘a realizeze o deplasare de la floarea albastr˘a la floarea ros, ie. R RSe presupune c˘a pozInit, ial s, i pozFinal sunt deja init, ializate, funct, ia PozUrm() re- turneaz˘a pozit, ia urm˘atoare, în direct, ia de înaintare, funct, ia Avans() avanseaz˘a pe urm˘a- toarea pozit, ie, în direct, ia de înaintare, DirStânga() schimb˘a direct, ia de înaintare cu 90 de grade, la stânga. Folosind aceste notat, ii, care dintre urm˘atorii algoritmi i-ar putea permite robot, elului s˘a se deplaseze între cele dou˘a flori, acesta fiind amplasat init, ial pe pozit, ia florii albastre, într-o direct, ie de înaintare oarecare. 1 pozit, ie = pozInit, ial repet˘a dac˘a PozUrm() este VERDE atunci Avans() altfel DirStânga() pân˘a când pozit, ie = pozFinal 2 " pozit, ie = pozInit, ial repet˘a dac˘a PozUrm() este VERDE S, I PozUrm() <> pozInit, ial atunci Avans() altfel DirStânga() pân˘a când pozit, ie = pozFinal 3 pozit, ie = pozInit, ial repet˘a dac˘a PozUrm() este ALB atunci DirStânga() altfel Avans() pân˘a când pozit, ie = pozFinal 4 " pozit, ie = pozInit, ial repet˘a dac˘a PozUrm() este ALB SAU PozUrm() = pozInit, ial atunci DirStânga() altfel Avans() pân˘a când pozit, ie = pozFinal Ciorn˘a, marcat, i 1-2 r˘aspunsuri: 1 2 3 4 55 Niciunul dintre algoritmii de mai sus
Subiect · pagina 5
concurs admitere fmi@uvt, iulie 2023 5 Explicat, ii Variantele corecte (2 s, i 4) sunt singurele care evit˘a revenirea în pozit, ia init, ial˘a (ceea ce ar duce la un ciclu infinit, deci va patrula permanent). Problema 9: Cu tact O platform˘a hardware foloses, te câteva instruct, iuni de baz˘a pentru execut, ia programelor, fiecare necesitând un anumit num˘ar de cicluri de tact la execut, ie, conform specificat, iilor de mai jos: 1. <instruct, iuneN > — foloses, te N cicluri de tact (e.g. <instruct, iune1> foloses, te 1 ciclu de tact) 2. <condit, ieM> — foloses, te M cicluri de tact (e.g. <condit, ie2> foloses, te 2 cicluri de tact) 3. IF <condit, ieM> THEN <instruct, iuneN > — foloses, te 4+N+M cicluri de tact 4. WHILEK <condit, ieM> DO <instruct, iuneN > — foloses, te minim 8+M s, i maxim K × (4+M+N) cicluri de tact, unde K este num˘arul de iterat, ii 5. NOT <condit, ieM> — foloses, te 1+M cicluri de tact 6. <condit, ieM1> AND <condit, ieM2> — foloses, te minim 2+M1 s, i maxim 2+M1+M2 cicluri de tact 7. <condit, ieM1> OR <condit, ieM2> — foloses, te foloses, te minim 2+M1 s, i maxim 2+M1+M2 cicluri de tact Fiind dat˘a urm˘atoarea secvent, ˘a de cod: WHILE8 (<condit, ie2> AND (NOT <condit, ie4>)) DO IF (<condit, ie2> OR <condit, ie2>) THEN <instruct, iune4> Precizat, i care dintre urm˘atoarele variante sunt corecte: Ciorn˘a, marcat, i 1-2 r˘aspunsuri: 1 2 3 4 5 1 Secvent, a foloses, te întotdeauna peste 200 de cicluri de tact. 2 Secvent, a foloses, te uneori mai mult de 200 de cicluri de tact." 3 Secvent, a foloses, te cel mult 200 de cicluri de tact. 4 Secvent, a foloses, te uneori mai put, in de 12 cicluri de tact. 5 Secvent, a nu foloses, te mai put, in de 12 cicluri de tact." Explicat, ii Num˘arul maxim de cicluri de tact: 8 · (4 + cond(2 + 2 + (1 + 4)) + i f (4 + 4 + (2 + 2 + 2))) = 27 · 8 = 216 cicluri. Num˘arul minim de cicluri de tact: 8 + (2 + 2) = 12 cicluri. Problema 10: Doar o procedur˘a Se consider˘a procedura RunMe(x, p, a) unde x s, i p sunt numere întregi s, i a num˘ar natural. Cerint, e: x, p ∈ Z, a ∈ N procedura RunMe(x, p, a) afis, eaz˘a x, " " dac˘a p > 0 atunci dac˘a x > 0 atunci RunMe(x − a, p, a) afis, eaz˘a x, " " altfel dac˘a x < 0 atunci RunMe(x + a, p, a) afis, eaz˘a x, " " Precizat, i care dintre urm˘atoarele afirmat, ii sunt adev˘arate: Ciorn˘a, marcat, i 1-2 r˘aspunsuri: 1 2 3 4 5
Subiect · pagina 6
6 1 Pentru apelul RunMe(9, 7, 4), se va afis, a s, irul 9 5 1 -3 1 5 9 " 2 Pentru apelul RunMe(6, −3, 3), se va afis, a s, irul -6 -3 0 3 6 3 Pentru apelul RunMe(12, 3, 4), se va afis, a s, irul 12 8 4 0 -4 -8 -12 4 Pentru apelul RunMe(−8, −3, 3), se va afis, a s, irul -8 -5 -2 1 -2 -5 -8 " 5 Pentru apelul RunMe(6, −3, 3), se va afis, a s, irul 6 3 0 -3 -6 Explicat, ii S, irurile de valori afis, ate trebuie s˘a înceap˘a cu valoarea init, ial˘a a lui x s, i s˘a fie simetrice în raport cu elementul din centru (prima valoare nul˘a sau negativ˘a dac˘a p > 0, respectiv prima valoare nul˘a sau pozitiv˘a dac˘a p < 0) întrucât aceeas, i valoare se afis, eaz˘a atât la apelul funct, iei recursive cât s, i la ies, irea din apel. Deci r˘aspunsurile corecte sunt: pentru x = 9, p = 7, a = 4 se obt, ine s, irul 9 5 1 -3 1 5 9, iar pentru x = −8, p = −3, a = 3 se obt, ine s, irul -8 -5 -2 1 -2 -5 -8 Problema 11: Rezultat simplu Se consider˘a funct, ia RunMe, de mai jos Cerint, e: k ∈ N funct, ia RunMe(k) i, rezultat ← 0 pentru i ← 0 to k execut˘a dac˘a i mod 3 = 1 atunci rezultat ← rezultat + i altfel rezultat ← rezultat + 1 întoarce rezultat Precizat, i care dintre urm˘atoarele afirmat, ii sunt adev˘arate: 1 Pentru apelul RunMe(8), funct, ia va returna 18 " Ciorn˘a, marcat, i 1-3 r˘aspunsuri: 1 2 3 4 52 Pentru apelul RunMe(0), funct, ia va returna 1 " 3 Pentru apelul RunMe(5), funct, ia va returna 5 4 Pentru apelul RunMe(9), funct, ia va returna 18 5 Pentru apelul RunMe(4), funct, ia va returna 8 " Explicat, ii Valorile returnate pentru k variind de la 0 la 9 sunt: 1, 2, 3, 4, 8, 9, 10, 17, 18, 19, deoarece la rezul- tat se adaug˘a 1 pentru toate valorile parcurse, cu except, ia lui 4 s, i 7 pentru care se adaug˘a 4 respectiv 7. Deci pentru k = 0 obt, inem 1, pentru k = 8 obt, inem 18, iar pentru k = 4 obt, inem 8. Problema 12: Run it once Se consider˘a algoritmul de mai jos funct, ia RunMe(i, n) dac˘a i = 0 atunci întoarce 0 altfel
Subiect · pagina 7
concurs admitere fmi@uvt, iulie 2023 7 dac˘a (n mod 2) = 0 atunci întoarce RunMe(i + 1, n) + n altfel întoarce RunMe(i − 1, n) + n Care sunt valorile de start pentru care execut, ia algoritmului nu se termin˘a niciodat˘a? 1 i ← 2, n ← 7 Ciorn˘a, marcat, i 1-3 r˘aspunsuri: 1 2 3 4 52 i ← 3, n ← 4 " 3 i ← 5, n ← 0 " 4 i ← 3, n ← 3 5 i ← 2, n ← 6 " Explicat, ii Algoritmul nu se termin˘a niciodat˘a (în pseudocod) atunci când valoarea lui n este par˘a. Evident r˘aspunsurile corecte sunt: i ← 3, n ← 4, i ← 5, n ← 0, i ← 2, n ← 6. Problema 13: Run the vector Se consider˘a algoritmul RunMe(a, n) unde n este num˘ar natural (2 ≤ n ≤ 1 000) s, i a un vector de n numere întregi (a[1], a[2], ..., a[n]). Cerint, e: n ∈ N, 2 ≤ n ≤ 1000 funct, ia RunMe(a, n) b, i ← 1, j ← n cât timp j > i execut˘a cât timp a[i] mod 2̸ = 0 S, I i ≤ n execut˘a i ← i + 1 cât timp a[j] mod 2 = 0 S, I j ≥ 1 execut˘a j ← j − 1 dac˘a i < j atunci a[i] ← a[i] + a[j] a[j] ← a[i] − a[j] a[i] ← a[i] − a[j] Ce efect are algoritmul asupra vectorului a: 1 plaseaz˘a elementele impare în prima parte a vectorului " Ciorn˘a, marcat, i 1-3 r˘aspunsuri: 1 2 3 4 52 ordoneaz˘a cresc˘ator vectorul 3 dac˘a toate elementele sunt pozitive, nu are niciun efect 4 plaseaz˘a elementele pozitive în a doua parte a vectorului 5 dac˘a toate elementele sunt pare, nu are niciun efect " Explicat, ii În cazul algoritmului de mai sus, i este incrementat cu valoarea 1 pân˘a se g˘ases, te un element par sau i devine mai mare decât n, iar j este decrementat cu valoarea 1 pân˘a se g˘ases, te un el- ement impar sau j devine mai mic decât 1. În cazul în care i este înc˘a mai mic decât j se vor interschimba elementele de pe pozit, iile i s, i j, un element impar ajunge în fat, a unui element par. La finalul algoritmului toate elementele impare vor fi în prima parte a vectorului, iar dac˘a toate elementele sunt pare, j este drecrementat pân˘a la 0 s, i algoritmul nu are niciun efect.
Subiect · pagina 8
8 Problema 14: Odd enough Se consider˘a algoritmul RunMe(n) de mai jos, unde n este num˘ar întreg. Cerint, e: n ∈ Z funct, ia RunMe(n) dac˘a n ≤ 0 atunci întoarce 2 întoarce RunMe(n − 2) + 5 Precizat, i care dintre urm˘atoarele afirmat, ii sunt adev˘arate: 1 Pentru apelul RunMe(6), algoritmul returneaz˘a 17 " Ciorn˘a, marcat, i 1-3 r˘aspunsuri: 1 2 3 4 52 Pentru apelul RunMe(5), algoritmul returneaz˘a 17 " 3 Pentru apelul RunMe(10), algoritmul returneaz˘a 15 4 Pentru apelul RunMe(−1), algoritmul returneaz˘a 2 " 5 Pentru apelul RunMe(2), algoritmul returneaz˘a 15 Explicat, ii În cazul algoritmului de mai sus, funct, ia este apelat˘a recursiv pentru (n − 2) care ne ofer˘a num˘arul de pas, i pân˘a când n = 0 sau n < 0. Când n = 0 sau n < 0 se obt, ine valoarea 2 la care se adaug˘a valoarea 5 pentru fiecare pas. Astfel r˘aspunsurile corecte sunt: pentru n = 6, se obt, ine 17, pentru n = 5, se obt, ine 17(2 + 5 + 5 + 5), iar pentru n = −1, se obt, ine 2. Problema 15: Un vector Se consider˘a un vector a cu n numere întregi (a[1], a[2], ..., a[n]), num˘arul natural n (1 ≤ n ≤ 1 000) s, i num˘arul întreg x. Care din urm˘atoarele secvent, e de cod returneaz˘a pozit, ia cu indicele maxim la care se g˘ases, te valoarea x în vectorul a, sau returneaz˘a −1 dac˘a x nu se g˘ases, te în a? 1 i ← n cât timp i ≥ 1 execut˘a i ← i − 1 dac˘a a[i] = x atunci întoarce i întoarce −1 2 i ← n, b ← −1 cât timp i ≥ 1 execut˘a dac˘a a[i] = x atunci b ← i i ← i − 1 întoarce b 3 " i ← 1, b ← −1 cât timp i ≤ n execut˘a dac˘a a[i] = x atunci b ← i i ← i + 1 întoarce b 4 " i ← n cât timp i ≥ 1 execut˘a dac˘a a[i] = x atunci întoarce i i ← i − 1 întoarce −1 Ciorn˘a, marcat, i 1-3 r˘aspunsuri: 1 2 3 4 55 Niciuna dintre secvent, ele de mai sus
Subiect · pagina 9
concurs admitere fmi@uvt, iulie 2023 9 Explicat, ii În cazul enunt, ului de mai sus r˘aspunsurile corecte sunt (3) s, i (4). În cazul (3) vectorul este parcurs de la început s, i de fiecare dat˘a când un element este egal cu x, actualizeaz˘a pozit, ia ele- mentului în variabila b care este returnat˘a la sfârs, it, deci este returnat˘a ultima pozit, ie pe care se afl˘a x. În cazul (4) vectorul este parcurs de la sfârs, it iar când este g˘asit x este returnat˘a pozit, ia lui. Varianta (1) este incorect˘a pentru c˘a nu analizeaz˘a pe a[n], iar varianta (2) este incorect˘a pentru c˘a modific˘a pe b la fiecare intâlnire a lui x, deci va întoarce prima pozit, ie pe care se afl˘a x. Problema 16: ∞ Se consider˘a algoritmul: Cerint, e: n ∈ N funct, ia RunMe(n) dac˘a n = 0 atunci întoarce 0 altfel dac˘a (n mod 2)̸ = 0 atunci întoarce RunMe(n − 1) întoarce RunMe(n − 1) + n Precizat, i care dintre afirmat, iile urm˘atoare sunt corecte: 1 RunMe(111) = 3 078 Ciorn˘a, marcat, i 1-3 r˘aspunsuri: 1 2 3 4 52 RunMe(777) = 150 932 " 3 Funct, ia RunMe() poate returna numere impare 4 Funct, ia RunMe() poate returna numere pare " 5 Funct, ia RunMe() poate intra uneori în ciclu infinit Explicat, ii Functia calculeaz˘a suma numerelor pare mai mici decat n (adic˘a 2 ∑[n/2] i=1 i) Pentru RunMe(777) obt, inem suma numerelor pare de la 0 la 776, deci avem [n/2] = 388, în con- cluzie RunMe(777) = 388 ∗ 389 = 150, 932 Pentru RunMe(111) obt, inem suma numerelor pare de la 0 la 111, deci avem [n/2] = 55, în con- cluzie RunMe(111) = 55 ∗ 56 = 3, 080 Problema 17: Nis, te s, iruri Fiind dat algoritmul de mai jos, unde argumentele s1, s2 transmise funct, iei sunt s, iruri de caractere (care sunt indexate începând cu pozit, ia 1), iar n, m sunt numere naturale: Cerint, e: n, m ∈ N funct, ia RunThat(s1, s2, n, m) dac˘a n > 0 S, I m > 0 atunci dac˘a s1[n]̸ = s2[m] atunci întoarce n + m altfel întoarce RunThat(s1, s2, n − 1, m − 1)
Subiect · pagina 10
10
întoarce 0
Precizat, i care dintre afirmat, iile urm˘atoare sunt corecte:
1 Funct, ia poate fi folosit˘a pentru compararea a dou˘a s, iruri Ciorn˘a, marcat, i 1-3 r˘aspunsuri:
1 2 3 4 5
2 RunThat("MERGE!", "SUPER BETON!", 6, 12) = 16 "
3 Funct, ia RunThat() returneaz˘a uneori s, i valoarea 0 "
4 Funct, ia RunThat() poate intra uneori în ciclu infinit
5 Funct, ia RunThat() poate avea comportament nedefinit pentru anumite valori ale parametrilor "
Explicat, ii
Dac˘a s, irurile sunt de lungimi egale funct, ia va returna 0 (varianta 3).
RunThat("MERGE!", "SUPER BETON!", 6, 12) = 5 + 11 = 16 (varianta 2) unde 5 s, i 11
reprezint˘a pozit, iile literelor care nu corespund pornind de la sfârs, itul s, irurilor.
Dac˘a n sau m este mai mare decât lungimea s, irului corespunz˘ator, atunci funct, ia RunThat()
poate avea comportament nedefinit (varianta 5).
Problema 18: This and that
Se consider˘a algoritmul RunThat(n), unde 1 ≤ n ≤ 1 000.
Cerint, e: n ∈ N, 1 ≤ n ≤ 1000
funct, ia RunThat(n)
dac˘a n < 2 atunci
întoarce n
a ← 0; b ← 1; c ← 0
pentru i ←2 to n execut˘a
c ← a + b; a ← b; b ← c
întoarce c
Precizat, i care dintre urm˘atoarele afirmat, ii sunt adev˘arate:
1 Pentru apelul RunThat(5), algoritmul returneaz˘a valoarea 5 " Ciorn˘a, marcat, i 1-3 r˘aspunsuri:
1 2 3 4 5
2 Pentru apelul RunThat(20), algoritmul returneaz˘a valoarea 2 765
3 Pentru apelul RunThat(15), algoritmul returneaz˘a valoarea 600
4 Pentru apelul RunThat(10), algoritmul returneaz˘a valoarea 55 "
5 Pentru apelul RunThat(8), algoritmul returneaz˘a valoarea 21 "
Explicat, ii
Valorile calculate de algoritm corespund s, irului definit de urm˘atoare relat, ie de recurent, ˘a: sn =
sn−1 + sn−2, s1 = s2 = 1
Problema 19: Eficient, ˘a maxim˘a
Algoritmul de mai jos îs, i propune s˘a însumeze într-un mod eficient divizorii num˘arului n, îns˘a unele instruct, iuni sunt incomplete:
Cerint, e: n ∈ N, n > 0
funct, ia RunMe(n)
sum ← 0Subiect · pagina 11
concurs admitere fmi@uvt, iulie 2023 11 pentru ⟨1⟩ execut˘a dac˘a ⟨2⟩ atunci sum ← sum + d dac˘a ⟨3⟩ atunci sum ← sum + n/d întoarce sum Completat, i instruct, iunile care lipsesc astfel: Ciorn˘a, marcat, i 1-3 r˘aspunsuri: 1 2 3 4 51 ⟨1⟩ cu d ← 1 to sqrt(n); ⟨2⟩ cu n mod d = 0; ⟨3⟩ cu d̸ = n/d " 2 ⟨1⟩ cu d ← 1 to n; ⟨2⟩ cu d mod n = 0; ⟨3⟩ cu d̸ = 0 3 ⟨1⟩ cu d ← 1 to sqrt(n); ⟨2⟩ cu n mod d̸ = 0; ⟨3⟩ cu n mod n/d = 0 4 ⟨1⟩ cu d ← 1 to n; ⟨2⟩ cu n mod d = 0; ⟨3⟩ cu d̸ = n/d 5 ⟨1⟩ cu d ← 1 to sqrt(n); ⟨2⟩ cu d mod n = 0; ⟨3⟩ cu n mod n/d = 0 Explicat, ii R˘aspunsul corect este: ⟨1⟩ cu d ← 1 to sqrt(n); ⟨2⟩ cu n mod d = 0; ⟨3⟩ cu d̸ = n/d. Problema 20: Este produs? Algoritmul de mai jos îs, i propune s˘a înmult, easc˘a dou˘a numere naturale a s, i b, cu a ≥ 0 s, i b ≥ 0. Cerint, e: a, b ∈ N, a ≥ 0, b ≥ 0 1: funct, ia RunMe(a, b) 2: dac˘a b = 0 atunci 3: întoarce 0 4: dac˘a a mod 2 = 0 atunci 5: întoarce RunMe(2 ∗ a, b/2) 6: altfel 7: întoarce RunMe(2 ∗ a, b/2 + a) S-au strecurat îns˘a dou˘a gres, eli. G˘ases, te-le s, i corecteaz˘a-le! 1 trebuie modificat testul din linia 4 în a mod 2̸ = 0 Ciorn˘a, marcat, i 1-3 r˘aspunsuri: 1 2 3 4 52 trebuie modificat testul din linia 4 în b mod 2 = 0 " 3 trebuie modificat apelul din linia 5 în RunMe(2 ∗ a, b/2) + a 4 trebuie modificat apelul din linia 7 în RunMe(2 ∗ a, b/2) + a" 5 trebuie modificat apelul din linia 7 în RunMe(2 ∗ a, b/2) Explicat, ii R˘aspunsurile corecte sunt: trebuie modificat testul din linia 8 în RunMe(2 ∗ a, b/2) + a s, i trebuie modificat testul din linia 5 în b mod 2 = 0 .
Alte subiecte de la aceeași facultate
Răspunsuri directe
Ce trebuie să știi despre acest subiect?
Ce document de admitere este acesta?
Pagina prezintă examen de admitere din 2023 pentru Informatică, la Facultatea de Informatică. Documentul este etichetat după instituție, facultate, program și tipul probei folosind inventarul public verificat. Consultă metodologia actuală a instituției pentru condițiile examenului viitor.
Există și barem sau răspunsuri pentru acest subiect?
Nu există un barem public asociat în inventarul verificat pentru acest document. ProfesorBun nu generează și nu inventează răspunsuri oficiale. Poți folosi subiectul pentru antrenament, dar corectarea trebuie făcută cu metodologia instituției, cu materiale oficiale suplimentare sau împreună cu un profesor.
Cum folosesc acest subiect în pregătirea pentru admitere?
Rezolvă documentul fără ajutor și respectă timpul prevăzut de metodologia examenului. Corectează cu baremul disponibil, marchează capitolele unde ai pierdut puncte și repetă exerciții similare. Compară apoi cu alte probe din aceeași facultate și confirmă programa curentă pe site-ul oficial al instituției.