Napisz algorytm w języku wy¿szego rzędu, który dla danych liczb

Transkrypt

Napisz algorytm w języku wy¿szego rzędu, który dla danych liczb
Wstęp do informatyki
Lista 8
Zapisz algorytmy w języku wyższego rzędu.
ZADANIE 1. Oblicz elementy trójkąta Pascala o wysokości n>=0. Zastosuj programowanie
dynamiczne.
Element trójkąta Pascala to wsp(i,j) dla danych naturalnych 0<=i<=n i 0<=j<=i, gdzie
wsp(i,j)=1 dla j=0;
wsp(i,j)=1 dla j=i;
wsp(i,j)=wsp(i–1,j) + wsp(i–1,j–1) dla 0<j<i.
ZADANIE 2. Oblicz wartość funkcji P(i,j), gdzie 0<=i,j<=n; i,j,n są liczbami naturalnymi. Zastosuj
programowanie dynamiczne.
Funkcja P jest zdefiniowana następująco:
P(0,0) = 0,
P(i,j) = 1, jeśli i=0, j>0;
P(i,j) = 0, jeśli i>=0, j=0;
P(i,j) = (P(i–1,j) + P(i,j–1)) / 2, jeśli i>0, j>0.
ZADANIE 3. Dla trzech rzeczy, z których pierwsza waży 4 kg i jest warta 40 zł, druga waży 3 kg i
jest warta 45 zł, a trzecia waży 2 kg i jest warta 40 zł, oraz plecaka, mogącego pomieścić 7 kg podaj
rozwiązanie problemu plecakowego:
a) ogólnego za pomocą metody zachłannej,
b) ogólnego za pomocą programowania dynamicznego,
c) decyzyjnego za pomocą metody zachłannej.
d) decyzyjnego za pomocą programowania dynamicznego
ZADANIE 4. Podaj rozwiązanie ogólnego problemu plecakowego za pomocą algorytmu zachłannego,
gdzie n jest liczbą różnych przedmiotów a i-ty przedmiot jest w nieograniczonej ilości, w i jest wagą, pi
– wartością i-tego przedmiotu dla i=1, 2, ..., n, oraz W maksymalnym sumarycznym ciężarem
przedmiotów, które turysta może włożyć do plecaka. Uwaga: zakładamy, że dane wejściowe są
poprawnie uporządkowane.
ZADANIE 5. Podaj rozwiązanie ogólnego problemu plecakowego za pomocą programowania
dynamicznego, gdzie n jest liczbą różnych przedmiotów, w i jest wagą, pi – wartością i-tego
przedmiotu dla i=1, 2, ..., n, oraz W maksymalnym sumarycznym ciężarem przedmiotów, które turysta
może włożyć do plecaka.
ZADANIE 6. Podaj rozwiązanie decyzyjnego problemu plecakowego za pomocą algorytmu
zachłannego, gdzie n jest liczbą przedmiotów, w i – wagą, pi – wartością i-tego przedmiotu dla i=1,
2, ..., n, oraz W maksymalnym sumarycznym ciężarem przedmiotów, które turysta może włożyć do
plecaka. Uwaga: zakładamy, że dane wejściowe są poprawnie uporządkowane.
ZADANIE 7. Podaj rozwiązanie decyzyjnego problemu plecakowego za pomocą programowania
dynamicznego, gdzie n jest liczbą przedmiotów, w i – wagą, pi – wartością i-tego przedmiotu dla i=1,
2, ..., n, oraz W maksymalnym sumarycznym ciężarem przedmiotów, które turysta może włożyć do
plecaka.
Punkty: 2,2,4,2,2,2,2 dost 7, bdb: 14