Download presentation
Presentation is loading. Please wait.
1
Lista probleme rezolvate informatica
1.Generarea combinarilor var sol:array[1..9] of integer; n,p:integer; procedure back(k:integer); var i:integer; begin if k=p+1 then for i:=1 to p do write (sol[i])l writeln; end; else if k>1 then sol [k]:=sol[k-1]; else sol[k]:=0; while sol[k]<n-p+k do sol[k]:=sol[k]+1; back (k+1); write (‘n=’); readln(n); write (‘p=’); readln(p); back(i); end.
2
2.Algoritmul de sortare cu metoda bulelor
Type vector:=array[1..100] of integer; var x:vector; n,I,f,t:integer; gata:Boolean; begin write (‘n=’); readln(n); for i:=1 to n do write (‘x[‘,I,’); readln (x[i]); end; f:=n; repeat gata:=true; for i:=1 to f-1 do if x[i] > x[i+1] then gata:=false; t:=x[i], x[i]:=x[i+1]; x[i+1]:=t; f:=f-1 until gata; for i:=1 to n do writeln (x[i]); readln; end.
3
3.Algoritmul de sortare rapida (Quick Sort)
Type vector:=array[1..100] of integer; Var i,n,k:integer; a:vector; procedure poz (p,q:integer; var k:integer; var a:vector); var i,j,c:integer; begin i1:=0; j1:= -1; i:=p; j;=q; for while i<j do begin if a[i]>a[j} then c:=a[j]; a[j]j:=a[i]; a[i]:=c; c:=i1: i1:= -j1: j1:= -c; end; i:=i+i1; k:=I; end: end.
4
4.Metoda injumatatirii unui interval
Var a:real; Function logn(a,p,q:real):real; var m:real; Begin m:=(p+q)/2; if a:=1 then begin:=0; else if abs(p-q)<0.001 then logn:=(p+q)/2 else if (exp(p)-a)*(exp(m)-a)<0 then log n:=log n(a,p,m) else log n:=log n(a,m,q) end; begin write (‘a=”); readln(a); writeln (‘logn(‘,a,’)=’, logn(a,0,a)); readln; end.
5
Type vector=array[1..100] of integer; Var x:vector; n:integer;
5.Generarea permutarilor Type vector=array[1..100] of integer; Var x:vector; n:integer; procedure citire (var x:vector; var n:integer); var i:integer; begin write(‘n=’); readln (n); for i:=1 to n do begin write (‘x[‘,i,’]=’); readln(x[i]); end; procedure solutie; write (‘(‘); for i:=1 to n-1 do write (x[i],’,’); writeln (x[n], ‘)’); function continuare (k:integer):Boolean; var i:integer; ok:=Boolean; ok:=true; if k=1 then continuare:=true; else for i:=1 to k-1 do if x[k]=x[i] then ok:=false; continuare:=ok; procedure back(k:integer); var i:integer; if (k=n+1) then solutie else begin if continuare (k) then back(k+1); end.
6
6.Problema colorarii hartiilor
Const c:array[1..4] of char=(‘G’,’R’,’A’,’V’); Type vector=array[1..50] of integer; Matrice=array[1..50,1..50] of integer; Var A:matrice; x:vector; n:integer; procedure citire (var n:integer; var A:matrice); var i,j:integer; begin write (‘n=’); readln(n); for i:=1 to n do for j:=1 to n do begin write (‘A[‘ ,i,’,’,’]=’); procedure solutie; var i:integer; for i=1 to n do writeln (‘tara’,i,’:’,C[x[i]]; end; function continuare (k:integer):boolean; continuare:=time; for i:=1 to k-1 do if (A[i,k]=1) and (x[i]=x[k]) then continuare :=false; procedure back(k:integer); if (k=n+1) then solutie else for i:=1 to 4 do begin x[k]:=i; if continuare (k) then back(k+1); citire (n,A); back (1); end.
7
7.Generarea aranjamentelor de n elemente luate cate p
Type vector=array[1..20] of integer; Var x:vector; n,p:integer; procedure solutie; var i:integer; begin for i:=1 to p do write (x[i],’ ‘); end; procedure back (k:integer); if (k=p+1) then solutie else for i:=1 to n do x[k]:=I; if continuare (k) then back (k=1); write(‘n=’); readln(n); wrte (‘p=’); readln(p); back(1); end.
8
8.Partile unui numar natural
Type vector=array[1..20] of integer Var x:vector n,s:integer; procedure solutie (k:integer); var i:integer; begin for i:=1 tok do write (x[i],’ ‘); writeln; end; function continuare (k:integer):Boolean; continuare:=(x[k] + s)<n; procedure back(k:integer); if (s=n) then solutie (k-1) else begin x[k]:=0; while continuare (k) do x[k]=x[k]+1; s:=s+x[k]; back (k+1); write (‘n=’); readln (n); back(1); readln; end.
9
Lista grile rezolvate 1.Utilizând metoda backtracking se generează în ordine lexicografică cuvintele de câte patru litere din mulţimea A={a,b,c,d,e}, cuvinte care nu conţin două vocale alăturate. Primele opt cuvinte generate sunt, în ordine: abab, abac, abad, abba, abbb, abbc, abbd, abbe. Câte dintre cuvintele generate încep cu litera b şi se termină cu litera e? a. 9 b. 15 c. 12 d. 20 Babe bebe Bace bece Bade bede Bbbe Bbce R:15 – b. Bbde Bcbe Bcce Bcde Bdbe Bdce Bdde
10
Care este penultimul cuvânt generat? a. edec b. eded c. edde d. edcb
2.Utilizând metoda backtracking se generează în ordine lexicografică cuvintele de câte patru litere din mulţimea A={a,b,c,d,e}, cuvinte care nu conţin două vocale alăturate. Primele opt cuvinte generate sunt, în ordine: abab, abac, abad, abba, abbb, abbc, abbd, abbe. Care este ultimul cuvânt generat? a. edcb b. eeee c. edde d. eded 5555 Eeee F 5554 Eeed F R: eded – d 5454 Eded A 5445 Edde F 3.Utilizând metoda backtracking se generează în ordine lexicografică cuvintele de câte patru litere din mulţimea A={a,b,c,d,e}, cuvinte care nu conţin două vocale alăturate. Primele opt cuvinte generate sunt, în ordine: abab, abac, abad, abba, abbb, abbc, abbd, abbe. Care este penultimul cuvânt generat? a. edec b. eded c. edde d. edcb 5454 eded – ultimul cuvant generat 5453 edec – penultimul cuvant generat R: a.edec
11
4.Utilizând metoda backtracking se generează în ordine lexicografică cuvintele de câte patru litere din mulţimea A={a,b,c,d,e}, cuvinte care nu conţin două vocale alăturate. Primele opt cuvinte generate sunt, în ordine: abab, abac, abad, abba, abbb, abbc, abbd, abbe. Care este antepenultimul cuvânt generat? a. edde b. eddb c. edeb d. edcb 5452 edeb –c.antepenultimul R:c. 5.Folosind modelul combinărilor se generează numerele naturale cu câte trei cifre distincte din mulţimea {1,2,3,7}, numere cu cifrele în ordine strict crescătoare, obţinându-se, în ordine: 123, 127, 137, 237. Dacă se utilizează exact aceeaşi tehnică pentru a genera numerele naturale cu patru cifre distincte din mulţimea {1,2,3,4,5,6,7,8}, câte dintre numerele generate au prima cifră 2 şi ultima cifră 7? (4p.) a. 8 b. 3 c. 4 d. 6 R: b. 2348 2456 2457
12
6. Utilizând metoda backtracking sunt generate numerele de 3 cifre, având toate cifrele distincte şi cu proprietatea că cifrele aflate pe poziţii consecutive sunt de paritate diferită. Ştiind că primele şase soluţii generate sunt, în această ordine, 103, 105, 107, 109, 123, 125, care este a zecea soluţie generată? a. 145 b. 147 c. 230 d. 149 R: a. 7.Utilizând metoda backtracking sunt generate numerele de 3 cifre care au cifrele în ordine crescătoare, iar cifrele aflate pe poziţii consecutive sunt de paritate diferită. Ştiind că primele cinci soluţii generate sunt, în această ordine, 123, 125, 127, 129, 145, care este cel de al 8-lea număr generat? a. 169 b. 149 c. 167 d. 147 R: c. 8.Un algoritm de tip backtracking generează, în ordine lexicografică, toate şirurile de 5 cifre 0 şi 1 cu proprietatea că nu există mai mult de două cifre 0 pe poziţii consecutive. Primele 7 soluţii generate sunt: 00100, 00101, 00110, 00111, 01001, 01010, Care este a 8-a soluţie generată de acest algoritm? (4p.) a b c d R: a.
13
9.Folosind tehnica bactracking un elev a scris un program care generează toate numerele de câte n cifre (0<n≤9), cifrele fiind în ordine strict crescătoare. Dacă n este egal cu 5, câte numere vor fi generate de program? R: 10.Un algoritm generează în ordine crescătoare toate numerele de n cifre, folosind doar cifrele 3, 5 şi 7. Dacă pentru n=5, primele 5 soluţii generate sunt 33333, 33335, 33337, 33353, 33355, precizaţi care sunt ultimele 3 soluţii generate, în ordinea generării. R: 11.Pentru a scrie valoarea 10 ca sumă de numere prime se foloseşte metoda backtracking şi se generează, în această ordine, sumele distincte: , , 2+3+5, 3+7, 5+5. Folosind exact aceeaşi metodă, se scrie valoarea 9 ca sumă de numere prime. Care sunt primele trei soluţii, în ordinea generării lor? 10 : : 5+5
14
12.Trei băieţi, Alin, Bogdan şi Ciprian, şi trei fete, Delia, Elena şi Felicia, trebuie să formeze o echipă de 3 copii, care să participe la un concurs. Echipa trebuie să fie mixtă (adică să conţină cel puţin o fată şi cel puţin un băiat). Ordinea copiilor în echipă este importantă deoarece aceasta va fi ordinea de intrare a copiilor în concurs (de exemplu echipa Alin, Bogdan, Delia este diferită de echipa Bogdan, Alin, Delia). Câte echipe se pot forma, astfel încât din ele să facă parte simultan Alin şi Bogdan? 1. Alin,Bogdan,Delia / Alin,Delia,Bogdan 2. Bogdan,Alin, Delia / Bogdan.Delia,Alin 3. Delia, Alin,Bogdan / Delia,Bogdan,Alin 4. Alin,Bogdan,Elena / Alin,Elena,Bogdan 5. Bogdan,Alin,Elena / Bogdan,Elena,Alin 6. Elena,Alin,Bogdan / Elena,Bogdan,Alin 7. Alin,Bogdan,Felicia / Alin,Felicia,Bogdan 8. Bogdan,Alin,Felicia / Bogdan,Felicia, Alin => 18 13.Cate numere cu exact doua cifre poti fi construite folosind doar cifre pare distincte? a.12 b.14 c.20 d.25 24,26,28,42,46,48,62,64,68,82,84,86 R:a.12 14.Un elev a scris un program care folosind metoda backtracking genereaza toate nr de cate 5 cifre, cifrele fiind in ordine strist crescatoare.Scrieti toate nr.generate de program care au prima cifra 5. 56 -> 59
15
15.Generand sirurile de meximum 3 caractere distincte din multimea {A,B,C,D,E}, ordonate lexicografic obtinem succesiv: A, AB,ABC, ABD… .Ce sir va fi generat imediat dupa BAE? a.BCA b.CAB c.BC D.BEA R:c.BC 16.Utilizand med. Backtracking se genereaza permutarile cuv. Info.Daca primele 3 solutii generate sunt:fino, fion, fnio care este cea de-a cincia solutie? a.foin b.fnoi c.foni d.ifon info fino fion fnio fnoi R:b.fnoi 17.Un algoritm genereaza in ordine crescatoare toate numerele de n cifre (n<9), cu cifre distincte, care nu au doua cifre pare alcatuite.Daca pt n=5, primele 5 solutii generate sunt 10325,10327,10329,10345,10347, precizati care sunt urmatoarele 3 solutii generate, in ordinea obtinerii lor. 10349, 10365, 10367,10369,10389,10387,10389 18.Un algoritm genereaza in ordine descrescatoare, toate numerele de n cifre (n<9) cu cifre distincte care nu au doua cifre alaturate.Daca pt n=5 primele 5 solutii generate sunt 56789,456789,45679,45678,36789, preciuzati care sunt urmatoarele 3 solutii generate in oridnea obtinerii lor. 35679,35678,34789
16
Realizator: Goja Razvan
19.Urmatoarele probleme se refera la multimea de numere reale M={x1,x2…xn}.Care dintre aceste , comparativ cu celelalte, admite un algoritm care se incheie dupa un nr. Minim de pasi? a.sortarea elementelor multimii M b.generarea elem.produsului cartezian MxM c.Determinarea elementului minim al multimii M d.Generarea tuturor permutarilor multimii M R: c. 20.Utilizand metoda backtracking sunt generate in ordine crescatoare toate numerele de 3 cifre ,a.i, cifrese sunt in ordine crescatoare, iar cifrele aflate pe pozitii consecutive sunt de paritate diferita.Stiind ca primele 3 solutii generate sunt, inaceasta ordine, 123,125,127, scrieti toate nr.generate care au suma cifrelor egala cu 12. 123,125,127,129 145,147,149 167,169 199 R:129,147,345 Realizator: Goja Razvan
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.