Sunteți pe pagina 1din 2

TP Laborator 9

Backtracking
1. S se determine toate partiiile unei mulimi cu n elemente numerotate de la 1 la n. 2. S se determine anagramele distincte ale unui cuvnt dat (permutri cu repetiie). 3. Dat o mulime A de numere pozitive i un numr M, s se determine toate submulimile lui A cu suma elementelor M.

Greedy
4. Spunem c un numr este frumos dac are ca factori primi doar 2, 3, i 5. Dat un numr natural n, s se afieze primele n numere frumoase. 5. La inaugurarea unui restaurant sunt prezente mai multe persoane. Clienii i aleg din meniul pus la dispoziie cte o specialitate. Deocamdat ns restaurantul a angajat un singur buctar care pregtete mncrurile una dup alta, deci clienii nu pot fi servii dect pe rnd. Presupunnd c buctarul se apuc de lucru dup ce s-au strns toate comenzile i timpul necesar pregtirii fiecrei comenzi este cunoscut, stabilii n ce ordine trebuie s pregteasc specialitile astfel nct timpul mediu de ateptare a clienilor s fie minim. Exemplu: pentru 5 clieni numerotai de la 1 la 5 cu timpii necesari pregtirii comenzilor, n ordine, pentru cele 5 persoane, 30, 40, 20, 25, 60, ordinea de servire optim este 3, 4, 1, 2, 5, timpul mediu de ateptare fiind 86. 6. O companie dorete s organizeze o curs de vizitare a unui ora folosind staiile de pe artera principal a oraului. Pentru nceput sunt luate n considerare doar staiile situate de aceeai parte a drumului. Patronul companiei are o dilem: dac opririle vor fi prea dese, atunci strbaterea oraului va dura prea mult i va plictisi cltorii, iar dac staiile sunt prea rare cltorii vor fi prea puini. De aceea, criteriile dup care patronul stabilete staiile n care se va opri sunt: ntre dou staii alturate s fie cel puin x metri, iar numrul total de staii s fie maxim. Cunoscnd numrul de staii n de pe artera principal, distanele dintre staii consecutive i distana x, ajutai patronul s aleag staiile n care oprete. Staiile se presupun numerotate n ordine dintr-un capt al arterei la cellalt cu 1 la n Exemplu: Pentru n=10 i x=60 i distanele dintre staii consecutive 100, 50, 25, 25, 50, 10, 10, 80, 20, staiile selectate vor fi 1, 2, 5, 8, 9

Programare dinamic
7. Mo Crciun a poposit la bradul a doi frai, unde i-a golit sacul. Cnd s-au trezit, fraii au intrat ntr o mare dilem: cum i vor mpri ei cadourile moului? tiind c fiecare cadou are o valoare cuprins ntre 1 i 100 i c sunt maxim 100 de cadouri, scriei un program care s determine sumele cadourilor frailor precum i modul de mprire, astfel nct sumele obinute s fie cele mai apropiate posibil.

Exemplu: pentru 7 cadouri cu valorile 28, 7, 11, 8, 9, 7, 27 sumele sunt 48 i 49, o mprire a cadourilor fiind 28, 11, 9, respectiv 7, 8, 7, 27. 8. Problema paragrafrii. Se d o secven de n cuvinte i un numr natural m. Cu aceste cuvinte trebuie s se formeze o pagin de text din aceste cuvinte astfel: fiecare linie are cel mult m caractere ordinea cuvintelor rmne cea din secvena iniial dou cuvinte vor fi separate prin exact un spaiu pe fiecare rnd se afl un numr ntreg de cuvinte. O astfel de aezare n pagin se numete paragrafare. Costul unei paragrafri este suma cuburilor numrului de spaii libere rmase la sfritul fiecrei linii, cu excepia ultimei linii. S se determine o paragrafare cu cost minim. 9. Se consider o tabl de ah nxm (n,m date). Pe fiecare careu al tablei este plasat cte un obiect, fiecare cu o anumit valoare (cunoscut, numr natural). Pe tabl se deplaseaz un robot astfel: pornete de pe prima coloan, de pe o linie dat i se poate deplasa de pe coloana pe care se afl doar pe coloana urmtoare, n una dintre poziiile vecine (SE,E NE). La parcurgerea unei celule robotul adun obiectul din celul. S se determine un traseu al robotului astfel nct valoarea total a obiectelor adunate s fie maxim.

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