Dinamikus programozás. (Horváth Gyula és Szlávi Péter előadásai felhasználásával)

Méret: px
Mutatás kezdődik a ... oldaltól:

Download "Dinamikus programozás. (Horváth Gyula és Szlávi Péter előadásai felhasználásával)"

Átírás

1 Dnamkus programozás (Horváth Gyula és Szláv Péter előadása felsználásával)

2 Dnamkus programozás kncs Feladat: Egy N*M-es téglalap alakú területen egy járművel szedhetjük össze az elrejtett kncseket, a bal felső sarokból a jobb alsó felé ladva. A terep jobbra és lefelé lejt, azaz a jármű csak jobbra és lefelé ladt. Add meg, hogy maxmum hány kncset gyűjthet be!! A megoldás elemzése: Ha a megoldás egy L 1, L 2,,L j,, L k úton érhető el, akkor az L 1, L 2,,L j egy olyan út, amn elért pontban az odág begyűjthető legtöbb kncset kapjuk. Kezdőpozícó: (1,1) Végpozícó: (N,M) :19 Zsakó László: Dnamkus programozás 2/15

3 Dnamkus programozás kncs Megoldás: Számítsuk k mnden lehetséges mezőre, hogy addg eljutva menny a maxmálsan begyűjthető kncsek száma! Gy, j max Gy 1, j,gy, j1 Kncs, j max Gy 1, j,gy, j1 1 Kncs, j 1 "" " " vagy j * * * * * * * * * :19 Zsakó László: Dnamkus programozás 3/15

4 Dnamkus programozás A megoldás: Gy(N,M) kncs Kncsek: Gy(,1..M):=-1; Gy(1..N,):=-1 Cklus =1-től N-g Cklus j=1-től M-g Ha Kncs(,j)= * akkor k:=1 különben k:= Ha Gy(,j-1)>Gy(-1,j) akkor Gy(,j):=Gy(,j-1)+k különben Gy(,j):=Gy(-1,j)+k Cklus vége Cklus vége Eljárás vége. Gy, j max Gy 1, j,gy, j1 Kncs, j max Gy 1, j,gy, j1 1 Kncs, j 1 "" " " :19 Zsakó László: Dnamkus programozás 4/15 vagy j

5 Dnamkus programozás kncs Ha a bejárt útra s szükségünk lenne, akkor a Gy mátrx alapján az út vsszakövethető. Azt kell fgyelnünk, hogy mnden helyre a nagyobb értékű szomszédból kellett jönnünk. Útkírás(,j): Ha 1 vagy j 1 akkor Ha Gy(,j-1)>Gy(-1,j) akkor Útkírás(,j-1); K: J különben Útkírás(-1,j); K: L Eljárás vége. A megoldás a számítások után: Útkírás(N,M) :19 Zsakó László: Dnamkus programozás 5/15

6 Dnamkus programozás kncs Feladat: Egy N*M-es téglalap alakú területen egy járművel szedhetjük össze az elrejtett kncseket. A terep jobbra és lefelé lejt, azaz a jármű csak jobbra és lefelé ladt. Bzonyos helyeken akadályok vannak, ahova nem léphet! Add meg, hogy maxmum hány kncset gyűjthet be!! A megoldás elemzése: Ha a megoldás egy L 1, L 2,,L j,, L k úton érhető el, akkor az L 1, L 2,,L j egy olyan út, amn elért pontban az odág begyűjthető legtöbb kncset kapjuk. Kezdőpozícó: (1,1) Végpozícó: (N,M) :19 Zsakó László: Dnamkus programozás 6/15

7 Dnamkus programozás kncs Megoldás: Számítsuk k mnden lehetséges mezőre, hogy addg eljutva menny a maxmálsan begyűjthető kncsek száma! Gy, j max max N M Kncs, j Gy 1, j, Gy, j 1 Kncs, j Gy 1, j, Gy, j 1 1 Kncs, j * * * + + * * + * + + * * * * :19 Zsakó László: Dnamkus programozás 7/15 " " "" " " vagy j

8 Dnamkus programozás kncs Kncsek: Gy(,1..M):=; Gy(1..N,):= Cklus =1-től N-g Cklus j=1-től M-g Ha Kncs(,j)= * akkor k:=1 különben k:= Ha Kncs(,j)= + akkor Gy(,j):=-N*M különben Gy(,j-1)>Gy(-1,j) akkor Gy(,j):=Gy(,j-1)+k különben Gy(,j):=Gy(-1,j)+k Cklus vége Cklus vége Eljárás vége. A megoldás: Gy(N,M) :19 Zsakó László: Dnamkus programozás 8/15

9 Dnamkus programozás kncs Feladat: Egy N*M-es téglalap alakú területen egy járművel szedhetjük össze az elrejtett kncseket. A terep balról jobbra lejt, azaz a jármű csak jobbra, felfelé és lefelé ladt. Add meg, hogy maxmum hány kncset gyűjthet be! Mnden mezőre csak egyszer léphetünk! A megoldás elemzése: Ha a megoldás egy L 1, L 2,,L j,, L k úton érhető el, akkor az L 1, L 2,,L j egy olyan út, amn elért pontban az odág begyűjthető legtöbb kncset kapjuk, e de jöhetünk lentről s. Kezdőpozícó: (1,1) Végpozícó: (N,M) :19 Zsakó László: Dnamkus programozás 9/15

10 Dnamkus programozás kncs Megoldás: Számítsuk k mnden lehetséges mezőre, hogy addg eljutva menny a maxmálsan begyűjthető kncsek száma, lentről, lletve, fentről léptünk be! L, j max L 1, j, L, j 1, F, j 1 Kncs, j max L 1, j, L, j 1, F, j 1 1 Kncs, j "" " " vagy j F, j max F 1, j, L, j 1, F, j 1 Kncs, j max F 1, j, L, j 1, F, j 1 1 Kncs, j "" " " vagy j :19 Zsakó László: Dnamkus programozás 1/15

11 Dnamkus programozás kncs Kncsek: L(N+1,1..M):=-1; L(1..N,):=-1 F(,1..M):=-1; F(1..N,):=-1 Cklus j=1-től M-g Cklus =1-től N-g Ha Kncs(,j)= * akkor k:=1 különben k:= F(,j):=max(F(-1,j),L(,j-1),F(,j-1))+k Cklus vége Cklus =N-től 1-g -1-esével Ha Kncs(,j)= * akkor k:=1 különben k:= L(,j):=max(L(+1,j),L(,j-1),F(,j-1))+k Cklus vége Cklus vége Eljárás vége. A megoldás: F(N,M) :19 Zsakó László: Dnamkus programozás 11/15

12 Dnamkus programozás leghosszabb közös rész Feladat: Adjuk meg két sorozat =(x 1,x 2, x n ) és Y=(y 1,y 2, y m ) leghosszabb közös részsorozatát! Egy sorozat akkor részsorozata egy másknak, abból elemek elgyásával megkaptó. Megoldás: Jelölje =(x 1,x 2, x ) az, YY j =(y 1,y 2, y j ) pedg az Y sorozat egy-egy prefxét! Legyen Z=(z 1,z 2, z k ) egy megoldása a feladatnak! :18 Zsakó László: Dnamkus programozás 12/15

13 Dnamkus programozás leghosszabb közös rész A megoldás elemzése: Ha x n =y m, akkor z k =x n =y m, és ZZ k-1 az n-1 és YY m-1 leghosszabb közös részsorozata. Ha x n y m, akkor Z az n-1 és Y vagy az és YY m-1 leghosszabb közös részsorozata. Az és YY j leghosszabb közös részsorozatának hossza: h, j h 1, j 1 1 max h 1, j, h, j 1 egyébként x y j vagy j :18 Zsakó László: Dnamkus programozás 13/15

14 Dnamkus programozás leghosszabb közös rész A rekurzív algortmus: Hossz(,j): Ha = vagy j= akkor Hossz:= különben ()=Y(j) akkor Hossz:=Hossz(-1,j-1)+1 különben Hossz:=max(Hossz(-1,j),Hossz(,j-1)) Függvény vége. h, j h 1, j 1 1 max h 1, j, h, j 1 egyébként x y j vagy j :18 Zsakó László: Dnamkus programozás 14/15

15 Dnamkus programozás leghosszabb közös rész A jó megoldás rekurzó memorzálással: Hossz(,j): Ha H(,j)=-1 akkor Ha = vagy j= akkor H(,j):= különben ()=Y(j) akkor H(,j):=Hossz(-1,j-1)+1 különben H(,j):=max(Hossz(-1,j),Hossz(,j-1)) Elágazás vége Hossz:=H(,j) Függvény vége. Azaz, amt már egyszer kszámoltunk, azt tároljuk és ne számoljuk k újra! A H mátrxot kezdetben -1 értékekkel töltjük k! h, j h 1, j 1 1 max h 1, j, h, j 1 egyébként x y j vagy :18 Zsakó László: Dnamkus programozás 15/15 j

16 Dnamkus programozás toronyépítés Feladat: Adott M 1,M 2, M n méretű kockákból (amelyek súly szernt csökkenő sorrendbe vannak rendezve) építsünk maxmáls magasságú stabl tornyot! A stabl toronyban felfelé ladva a méret és a súly s csökken. Megoldás: Tegyük fel, hogy M megoldás! ; M ;...; M k 1 k Ekkor n= k-1 -re M ; M ;...; 1... s megoldás, azaz 1 M 2 k1 k1 az adott részproblémának megoldása a megoldás megfelelő részlete :18 Zsakó László: Dnamkus programozás 16/15

17 Dnamkus programozás toronyépítés Tehát a feladat a legmagasabb olyan torony magasságának kszámolása, ahol az. kocka van legfelül: Kocka 1 2 Kocka Kocka max... M M M egyébként M M M M :18 Zsakó László: Dnamkus programozás 17/15

18 Dnamkus programozás toronyépítés A rekurzív megoldás: Kocka(): K:=M() Cklus j=1-től -1-g Ha M() M(j) akkor Ha Kocka(j)+M()>K akkor K:=Kocka(j)+M() Cklus vége Kocka:=K Függvény vége. A rengeteg rekurzív hívás matt nagyon lassú. Láttó azonban, hogy Kocka() kszámításához csak a korábbakra van szükség. 1 2 Kocka M Kocka M Kocka max... M egyébként :18 Zsakó László: Dnamkus programozás 18/15 M M M M 1 2

19 Dnamkus programozás toronyépítés Toronyépítés: Kocka(1):=M(1) Cklus =2-től N-g K:=M() Cklus j=1-től -1-g Ha M() M(j) akkor Ha Kocka(j)+M()>K akkor K:=Kocka(j)+M() Cklus vége Kocka():=K Cklus vége Eljárás vége. A táblázatktöltős megoldás :18 Zsakó László: Dnamkus programozás 19/15

20 Dnamkus programozás toronyépítés Ezzel még nncs kész a megoldás, csak azt tudjuk mnden -re, hogy mekkora a legmagasabb torony, amkor az -edk kocka van felül. A megoldás ezen számok maxmuma. Ha bevezetnénk egy N+1., méretű kockát, akkor a megoldás értéke Kocka(N+1) lenne. Ha a tornyot fel s kellene építen, akkor még azt s tároln kell, hogy melyk kockát melykre kell rátenn :18 Zsakó László: Dnamkus programozás 2/15

21 Dnamkus programozás toronyépítés Toronyépítés: Kocka(1):=M(1); Mre(1):=; M(N+1):= Cklus =2-től N+1-g K:=M(); Mre():= Cklus j=1-től -1-g Ha M() M(j) akkor Ha Kocka(j)+M()>K akkor K:=Kocka(j)+M(); Mre():=j Cklus vége Kocka():=K Cklus vége Eljárás vége :18 Zsakó László: Dnamkus programozás 21/15

22 Dnamkus programozás toronyépítés Torony: Toronyépítés Toronykírás(N+1) Eljárás vége. Toronykírás(): Ha Mre()> akkor Toronykírás(Mre()) K: Mre() Eljárás vége :18 Zsakó László: Dnamkus programozás 22/15

23 Dnamkus programozás kemence Feladat: Egy fazekasműhelyben N tárgy vár kégetésre. A kemencébe a beérkezés sorrendjében tehetők be, egyszerre legfeljebb K darab. Mnden tárgynak smerjük a mnmáls égetés dejét, amennyt legalább a kemencében kell töltene. Adjuk meg a mnmáls dőt, am alatt mnden tárgy kégethető! Megoldás: Tegyük fel, hogy ((1,, 1 ),, ( m-1 +1,,N)) a megoldás! Ekkor az N. tárgy vagy önmagában kerül a kemencébe, vagy legfeljebb K-1 előző tárggyal együtt :18 Zsakó László: Dnamkus programozás 23/15

24 Dnamkus programozás kemence Számítsuk k az első tárgy kégetéséhez szükséges dőt! Idő mn Idő Idő 1 Éget j 1 max Éget j.. ahol j 1 K :18 Zsakó László: Dnamkus programozás 24/15

25 Dnamkus programozás kemence Kemence: Idő():= Cklus =1-től N-g H:=Idő(-1)+Éget(); max:=éget(); G:= j:=-1 Cklus amíg j> és +j-1 K Ha max<éget(j) akkor max:=éget(j) Ha Idő(j-1)+max<H akkor H:=Idő(j-1)+max; G:=j j:=j-1 Cklus vége Idő():=H; Db():=-G+1 Cklus vége Eljárás vége. Idő mn Idő Idő 1 Éget j 1 max Éget j.. ahol j 1 K :18 Zsakó László: Dnamkus programozás 25/15

26 Dnamkus programozás kemence Feladat: Egy fazekasműhelyben N tárgy vár kégetésre. A kemencébe a beérkezés sorrendjében tehetők be, egyszerre legfeljebb S összsúlyú tárgy tehető. Mnden tárgynak smerjük a mnmáls égetés dejét, amennyt legalább a kemencében kell töltene. Adjuk meg a mnmáls dőt, am alatt mnden tárgy kégethető! :18 Zsakó László: Dnamkus programozás 26/15

27 Dnamkus programozás kemence Megoldás: Tegyük fel, hogy ((1,, 1 ),, ( m-1 +1,,N)) a megoldás! Ekkor az N. tárgy vagy önmagában kerül a kemencébe, vagy legfeljebb S súlyú előző tárggyal együtt. Számítsuk k az első tárgy kégetéséhez szükséges dőt! Idő mn Idő Idő 1 Éget j 1 max Éget j.. ahol Súly j.. S :18 Zsakó László: Dnamkus programozás 27/15

28 Dnamkus programozás kemence Kemence: Idő():= Cklus =1-től N-g H:=Idő(-1)+Éget(); max:=éget(); G:= j:=-1; Su:=Súly() Cklus amíg j> és Su+Súly(j) S Ha max<éget(j) akkor max:=éget(j) Su:=Su+Súly(j) Ha Idő(j-1)+max<H akkor H:=Idő(j-1)+max; G:=j j:=j-1 Cklus vége Idő():=H; Db():=-G+1 Cklus vége Eljárás vége. Idő mn Idő Idő 1 Éget j 1 max Éget j.. ahol Súly j :18 Zsakó László: Dnamkus programozás 28/15 S

29 Dnamkus programozás Tükörszó Feladat: Egy szóba mnmálsan hány karaktert kell beszúrn, hogy tükörszó legyen belőle (azaz ugyanaz legyen balról-jobbra és jobbról balra olvasva s)! Megoldás: Tetszőleges S szóra az SS T szó bztos tükörszó, tehát a feladatnak kell legyen megoldása! Alternatív feladat: mnmálsan hány betűt kell töröln? :18 Zsakó László: Dnamkus programozás 29/15

30 Dnamkus programozás Tükörszó Az egybetűs szavak bztosan tükörszavak. Az azonos kezdő- és végbetűjű szavak tükörszóvá alakításához elég a középső rész átalakítása. Ha az első és az utolsó betű különbözk, akkor két lehetőségünk van a tükörszóvá alakításra: az első betűt szúrjuk be a szó végére; az utolsó betűt szúrjuk be a szó elejére. M, j M 1, j 1 1 mn M 1, j, M, j 1 Probléma: a rekurzó nem tékony! j j j és és S S S S j j :18 Zsakó László: Dnamkus programozás 3/15

31 Dnamkus programozás Tükörszó Jó sorrendű táblázatktöltés kell: 1, j :18 Zsakó László: Dnamkus programozás 31/15

32 Dnamkus programozás Tükörszó Tükörszó(S,M): M() kezdő feltöltése Cklus j=2-től N-g M(j,j):= Cklus =j-1-től 1-g -1-esével Ha S()=S(j) akkor M(,j):=M(+1,j-1) különben M(,j):=1+Mn(M(+1,j),M(,j-1)) Cklus vége Cklus vége Tükörszó:=M(1,N) Függvény vége :18 Zsakó László: Dnamkus programozás 32/15

33 Dnamkus programozás Tükörszó Tükörszó(S,T): T(1):= Cklus j=2-től N-g T(j):=; Ment:= Cklus =j-1-től 1-g -1-esével Ment:=T() Ha S()=S(j) akkor T():=Ment különben T():=1+Mn(T(),T(+1)) Ment:=Ment Cklus vége Cklus vége Tükörszó:=T(1) Függvény vége. Mátrx (M) helyett vektor (T) sználatával :18 Zsakó László: Dnamkus programozás 33/15

34 Dnamkus programozás Tükörszó Tükörszó kírása: Ha Tükörszó(S,E) akkor :=1; j:=n Cklus amíg <j Ha S()=S(j) akkor :=+1; j:=j-1 különben Ha M(,j)=M(+1,j) akkor {S() a j. betű mögé} különben {S(j) az. betű elé} Cklus vége Eljárás vége :18 Zsakó László: Dnamkus programozás 34/15

35 Dnamkus programozás rúd darabolás Feladat: Egy fémrudat megadott számú darabra kell felvágn úgy, hogy a vágások pontos helyét s tudjuk. A vágások tetszőleges sorrendben elvégezhetőek. Egy vágás költsége megegyezk annak a darabnak a hosszával, amt éppen (két darabra) vágunk. Adjuk meg a vágás műveletsor optmáls összköltségét, és egy olyan vágás sorrendet, amely optmáls költséget eredményez. A megoldás elemzése: Ha az optmáls vágássorozatban először a K. helyen történk a vágás, akkor a V..V k és a V k..v n+1 rúd vágássorozata s optmáls lesz :18 Zsakó László: Dnamkus programozás 35/15

36 Dnamkus programozás rúd darabolás Megoldás: Számítsuk k mnden (,j) rúddarabra, hogy m ennek az optmáls vágás költsége! Opt, j V j V mn Opt j1,k Opt k, j k1 j 1 1 j :18 Zsakó László: Dnamkus programozás 36/15

37 Dnamkus programozás rúd darabolás Kncsek: Cklus =-tól N-g Opt(,+1):=; S(,+1):= Cklus vége Cklus u=2-től N+1-g Cklus =-töl N-u+1-g j:=+u; Mn:=+ Cklus k=+1-től j-1-g Ha Opt(,k)+Opt(k,j)<Mn akkor Mn:=Opt(,k)+Opt(k,j); Hol:=k Cklus vége Opt(,j):=V(j)-V()+Mn; S(,j):=Hol Cklus vége Cklus vége Eljárás vége. A megoldás: Opt(,N+1) :18 Zsakó László: Dnamkus programozás 37/15

38 Dnamkus programozás stratégája A dnamkus programozás stratégája 1. Az [optmáls] megoldás szerkezetének tanulmányozása. 2. Részproblémákra és összetevőkre bontás úgy, hogy: az összetevőktől való függés körmentes legyen; mnden részprobléma [optmáls] megoldása kfejezhető legyen (rekurzívan) az összetevők [optmáls] megoldásaval. 3. Részproblémák [optmáls] megoldásának kfejezése (rekurzívan) az összetevők [optmáls] megoldásaból :18 Zsakó László: Dnamkus programozás 38/15

39 Dnamkus programozás stratégája 4. Részproblémák [optmáls] megoldásának kszámítása alulról-felfelé ladva: A részproblémák kszámítás sorrendjének megtározása. Olyan sorba kell rakn a részproblémákat, hogy mnden p részprobléma mnden összetevője ( van) előbb szerepeljen a felsorolásban, mnt p. A részproblémák kszámítása alulról-felfelé ladva, azaz táblázatktöltéssel. 5. Egy [optmáls] megoldás előállítása a 4. lépésben kszámított (és tárolt) nformácókból :18 Zsakó László: Dnamkus programozás 39/15

40 Dnamkus programozás Feladat: Adott P 1,P 2, P n pénzjegyekkel kfzethető-e F fornt? Megoldás: Tegyük fel, hogy F P P... P... m! 1 2 m 1 Ekkor F P P P P......, azaz az adott m 1 2 m 1 1 m részproblémának megoldása a megoldás megfelelő részlete. Ezek alapján számoljuk k V(,) értékeket, ahol V(,) gaz, az összeg kfzethető az első pénzjeggyel! :18 Zsakó László: Dnamkus programozás 4/78

41 Dnamkus programozás Feladat: Adott P 1,P 2, P n pénzjegyekkel kfzethető-e F fornt? Megoldás: Három esetet vzsgálunk: az összeg megegyezk az -edk pénzjeggyel; az -edk pénzjegyet nem sználjuk fel; az -edk pénzjegyet felsználjuk: V P, gaz 1 és V, 1 x 1 és P és V P, :18 Zsakó László: Dnamkus programozás 41/78

42 Dnamkus programozás Feladat: Adott P 1,P 2, P n pénzjegyekkel kfzethető-e F fornt? Megoldás: V(,): V:==P() vagy, gaz 1 és V, 1 >1 és V(,-1) vagy >1 és P() és V(-P(),-1) Függvény vége. A megoldás: V(F,N) kszámolása. V P x 1 és P és V P, 1 Probléma: a futás dő O(2 N ) :18 Zsakó László: Dnamkus programozás 42/78

43 Dnamkus programozás V(,) kszámításához mely V() értékekre lehet szükség? Az ábra alapján V értéke alulról felfelé, azon belül balról jobbra számoltók :18 Zsakó László: Dnamkus programozás 43/78

44 Dnamkus programozás Pénzváltás(Lehet): V(1..F,1):=ms Ha P(1) F akkor V(P(1),1):=gaz Cklus =2-től N-g Cklus =1-től F-g V(,):==P() vagy V(,-1) vagy P() és V(-P(),-1) Cklus vége Cklus vége Lehet:=V(F,N) Függvény vége. A futás dő O(N*F) Memóragény: N*F :18 Zsakó László: Dnamkus programozás 44/78

45 Dnamkus programozás Memóragény csökkentés: elég egyetlen sort tároln a V mátrxból, és az első feltétel s megtakaríttó. Pénzváltás(Lehet): W(1..F):=ms; W():=gaz Ha P(1) F akkor W(P(1)):=gaz Cklus =2-től N-g Cklus =F-től 1-g -1-esével W():=W() vagy P() és W(-P()) Cklus vége Cklus vége Lehet:=W(F) Függvény vége. A futás dő O(N*F) Memóragény: F :18 Zsakó László: Dnamkus programozás 45/78

46 Dnamkus programozás Feladat: Adott P 1,P 2, P n pénzjegyek közül melyekkel fzethető k F fornt? Megoldás: Legyen V(,) a legutolsó olyan k ndex, amelyre gaz, hogy P k előfordul felváltásában! Legyen V(,)=N+1, nem válttó fel az első pénzjeggyel! :18 Zsakó László: Dnamkus programozás 46/78

47 Dnamkus programozás Feladat: Adott P 1,P 2, P n pénzjegyek közül melyekkel fzethető k F fornt? Megoldás: egyébként N N P V és P N V V és N V 1 1, 1, 1, 1, :18 Zsakó László: Dnamkus programozás 47/78

48 Dnamkus programozás Pénzváltás: A V mátrx kszámolása. V(1..F,):=N+1; V(,):= Cklus =1-től N-g V(,):= Cklus =1-től F-g Ha V(,-1) N akkor V(,):=V(,-1) különben P() és V(-P(),-1) N akkor V(,):= különben V(,):=N+1 Cklus vége Cklus vége V N 1, V, 1 V, 1 N 1 egyébként P N és és V P, :18 Zsakó László: Dnamkus programozás 48/78 N

49 Dnamkus programozás Csak akkor van megoldás, V(F,N) N. Ekkor k=v(f,n) olyan pénz ndexe, hogy F-P(k) felválttó az első k-1 pénzzel. Tehát a V(F-P(k),k-1) probléma megoldásával kell folytatnunk, mndaddg, amíg a maradék pénz nem lesz :18 Zsakó László: Dnamkus programozás 49/78

50 Dnamkus programozás Db:=; :=F; :=N Ha V(F,N) N akkor Cklus :=V(x,) Db:=Db+1; A(Db):= :=-P() :=-1 amíg Cklus vége Eljárás vége. A megoldás előállítása :18 Zsakó László: Dnamkus programozás 5/78

51 Dnamkus programozás Feladat: Adott P 1,P 2, P n pénzjegyek közül a lehető legkevesebbet sználva mennyvel fzethető k F fornt? Megoldás: Tegyük fel, hogy F P P P... optmáls m felbontás! Ekkor F P P P... P... m s optmáls, azaz m 1 2 m 1 1 az adott részproblémának megoldása a megoldás megfelelő részlete. m :18 Zsakó László: Dnamkus programozás 51/78

52 Dnamkus programozás Feladat: Adott P 1,P 2, P n pénzjegyek közül a lehető legkevesebbet sználva mennyvel fzethető k F fornt? Megoldás: P és P O O P és O és N O 1, 1,1, mn 1, 1, :18 Zsakó László: Dnamkus programozás 52/78

53 O Dnamkus programozás Pénzváltás(Mnmum): O(1..F,):=N+1; O(,):= Cklus =1-től N-g O(,):= Cklus =1-től F-g Ha <P() akkor O(,):=O(,-1) különben O(,):=mn(O(,-1), 1+O(-P(),-1)) Cklus vége Cklus vége Eljárás vége., mn O N 1 O, 1, 1,1 O P, :18 Zsakó László: Dnamkus programozás 53/78 és és és P P

54 Dnamkus programozás Feladat: Adott P 1,P 2, P n pénzjegyek közül a lehető legkevesebbet sználva melyekkel fzethető k F fornt? Megoldás: Tegyük fel, hogy F P P P... optmáls m felbontás! Ekkor F P P P... P... m s optmáls, azaz m 1 2 m 1 1 az adott részproblémának megoldása a megoldás megfelelő részlete. m :18 Zsakó László: Dnamkus programozás 54/78

55 Dnamkus programozás Feladat: Adott P 1,P 2, P n pénzjegyek közül a lehető legkevesebbet sználva melyekkel fzethető k F fornt? Megoldás: egyébként V P O O és P és N V 1, 1, 1 ), ( 1, :18 Zsakó László: Dnamkus programozás 55/78

56 Dnamkus programozás Pénzváltás(O,V): O(1..F):=N+1; O():=; V(1..F,):=N+1 Cklus =1-től N-g O():=; V(,):= Cklus =F-től 1-g -1-esével Ha P() akkor S:=O(-P())+1 különben S:=N+1 Ha S<O() akkor O():=S; V(,):= különben V(,):=V(,-1) Cklus vége Cklus vége Eljárás vége. V, V N 1, 1 egyébként P és és O(, ) 1 O :18 Zsakó László: Dnamkus programozás 56/78 P, 1

57 Dnamkus programozás Feladat: Két testvér adott értékű ajándékokon osztozkodk. Mnden egyes ajándékot pontosan ez egyk testvérnek kell adn. Készíts testvéres osztozkodást, azaz olyat, amelyben a két testvér által kapott ajándékok értéke különbségének abszolút értéke mnmáls! Megoldás: Ha az ajándékok összértéke E, akkor a feladat megoldása a legnagyobb olyan A E/2 szám, amely érték az ajándékok értékeből kétféleképpen s előállíttó. Tehát a megoldás vsszavezethető a pénzváltás probléma megoldására :18 Zsakó László: Dnamkus programozás 57/78

58 Megoldás: V(,): V:==P() vagy Dnamkus programozás V P x, gaz 1 és V, 1 >1 és V(,-1) vagy >1 és P() és V(-P(),-1) Függvény vége. A megoldás: a legnagyobb olyan A kválasztása (1 és E/2 között), amelyre V(A,N) gaz. 1 és P és V P, 1 Probléma: a futás dő O(2 N ) :18 Zsakó László: Dnamkus programozás 58/78

59 Dnamkus programozás V(,) kszámításához mely V() értékekre lehet szükség? Az ábra alapján V értéke alulról felfelé, azon belül balról jobbra számoltók :18 Zsakó László: Dnamkus programozás 59/78

60 Dnamkus programozás Testvéres osztozkodás(a): V(1..E,1):=ms Ha P(1) E akkor V(P(1),1):=gaz Cklus =2-től N-g Cklus =1-től E-g V(,):==P() vagy V(,-1) vagy P() és V(-P(),-1) Cklus vége Cklus vége Eredmény megadása(a,v,e,n) Függvény vége. A futás dő O(N*F) Memóragény: N*F :18 Zsakó László: Dnamkus programozás 6/78

61 Dnamkus programozás Eredmény megadása(a,v,e,n): A:=E/2 Cklus amíg nem V(A,N) A:=A-1 Cklus vége Függvény vége :18 Zsakó László: Dnamkus programozás 61/78

62 Dnamkus programozás Feladat: Két testvér adott értékű ajándékokon osztozkodk. Mnden egyes ajándékot pontosan ez egyk testvérnek kell adn. Készíts gazságos osztozkodást, azaz olyat, amelyben a két testvér által kapott ajándékok értéke egyforma, a maradék értéke pedg mnmáls! Megoldás: Ha az ajándékok összértéke E, mndkét testvér A értékű ajándékot kap. A feladat megoldása a legnagyobb olyan A E/2 szám, amely érték az ajándékok értékeből kétféleképpen előállíttó. Tehát a megoldás vsszavezethető a pénzváltás probléma megoldására :18 Zsakó László: Dnamkus programozás 62/78

63 Dnamkus programozás Megoldás: Legyen V(,Y,) gaz, az első ajándékból és Y értékű s előállíttó úgy, hogy mndegyk szám legfeljebb az egyk összegben szerepel! Legyen V(,,)=gaz mnden -re, V(,Y,) ms mnden,y-ra! V(,Y,)-re a következő rekurzív összefüggés írtó fel > esetén: V,Y, gaz V,Y, 1 P P Y és és V P,Y, 1 V, Y P, :18 Zsakó László: Dnamkus programozás 63/78

64 Dnamkus programozás Megoldás: Legyen V(,Y,) gaz, az első ajándékból és Y érték s előállíttó úgy, hogy mndegyk legfeljebb az egyk összegben szerepel! Legyen V(,,)=gaz mnden -re, V(,Y,) ms mnden,y-ra! V(,Y,): Ha = akkor V:=ms különben = és Y= akkor V:=gaz különben V:=V(,Y,-1) vagy P() és V(-P(),Y,-1) vagy P()Y és V(,Y-P(),-1) Függvény vége. A megoldás: a legnagyobb olyan A kválasztása (1 és E/2 között), amelyre V(A,A,N) gaz :18 Zsakó László: Dnamkus programozás 64/78

65 Dnamkus programozás Igazságos osztozkodás(a): V(1..E,1..E,1):=ms; V(,,1):=gaz Ha P(1) E akkor V(P(1),,1):=gaz V(,P(1),1):=gaz Cklus =2-től N-g Cklus =1-től E-g Cklus Y=1-től E-g V(,Y,):=V(,Y,-1) vagy P() és V(-P(),Y,-1) vagy P()Y és V(,Y-P(),-1) Cklus vége Cklus vége Eredmény megadása(a,v,e,n) Függvény vége :18 Zsakó László: Dnamkus programozás 65/78

66 Dnamkus programozás Eredmény megadása(a,v,e,n): A:=E/2 Cklus amíg nem V(A,A,N) A:=A-1 Cklus vége Függvény vége :18 Zsakó László: Dnamkus programozás 66/78

67 Dnamkus programozás Hátzsák feladat... 1 Feladat: Adott N tárgy (értékük F, súlyuk S ). Egy hátzsákba maxmum H súlyú tárgyat pakoltunk. Menny a maxmáls elszállíttó érték? Megoldás: Tegyük fel, hogy H S S S... optmáls meg- m 1 2 oldás, azaz F F... F maxmáls! 1 2 m Ekkor H S S S... S... m s optmáls, azaz az m 1 2 m 1 1 adott részproblémának megoldása a megoldás megfelelő részlete. m :18 Zsakó László: Dnamkus programozás 67/78

68 Dnamkus programozás Hátzsák feladat Feladat: Adott N tárgy (értékük F, súlyuk S ). Egy hátzsákba maxmum H súlyú tárgyat pakoltunk. Menny a maxmáls elszállíttó érték? Megoldás: Jelölje E(,) a legnagyobb elszállíttó értéket, amely az első tárgyból egy kapactású hátzsákba bepakoltó. E, max E F E, 1, 1, F E S, 1 1 egyébként és és és S S S :18 Zsakó László: Dnamkus programozás 68/78

69 Dnamkus programozás Hátzsák feladat Hátzsák(): E(..S(1)-1,1):=; E(S(1)..H,1):=F(1) Cklus =2-től N-g Cklus =-tól H-g E(,):=E(,-1) Ha S() és E(,)<E(-S(),-1)+F() akkor E(,):=E(-S(),-1)+F() Cklus vége Cklus vége Kírás Eljárás vége. E, max E F E, 1, 1, F E S, 1 1 egyébként és és és S S S :18 Zsakó László: Dnamkus programozás 69/78

70 Dnamkus programozás Hátzsák feladat Kírás: :=N; :=H Cklus amíg E(,)> Cklus amíg 1 és E(,)=E(,-1) :=-1 Cklus vége K:, :=-S(); :=-1 Cklus vége Eljárás vége :18 Zsakó László: Dnamkus programozás 7/78

71 Dnamkus programozás Feladat: Adott P 1,P 2, P n pénzjegyekkel kfzethető-e F fornt? Megoldás: Tegyük fel, hogy F P P... P... m! 1 2 m 1 Ekkor F P P P P......, azaz az adott m 1 2 m 1 1 m részproblémának megoldása a megoldás megfelelő részlete. Ezek alapján számoljuk k V(,) értékeket, ahol V(,) gaz, az összeg kfzethető az első pénzjeggyel! :18 Zsakó László: Dnamkus programozás 71/78

72 Dnamkus programozás Feladat: Adott P 1,P 2, P n pénzjegyekkel kfzethető-e F fornt? Megoldás: Három esetet vzsgálunk: az összeg megegyezk az -edk pénzjeggyel; az -edk pénzjegyet nem sználjuk fel; az -edk pénzjegyet felsználjuk: V P, gaz 1 és V, 1 x 1 és P és V P, :18 Zsakó László: Dnamkus programozás 72/78

73 Dnamkus programozás Feladat: Adott P 1,P 2, P n pénzjegyekkel kfzethető-e F fornt? Megoldás: V(,): V:==P() vagy, gaz 1 és V, 1 >1 és V(,-1) vagy >1 és P() és V(-P(),-1) Függvény vége. A megoldás: V(F,N) kszámolása. V P x 1 és P és V P, 1 Probléma: a futás dő O(2 N ) :18 Zsakó László: Dnamkus programozás 73/78

74 Dnamkus programozás V(,) kszámításához mely V() értékekre lehet szükség? Az ábra alapján V értéke alulról felfelé, azon belül balról jobbra számoltók :18 Zsakó László: Dnamkus programozás 74/78

75 Dnamkus programozás Pénzváltás(Lehet): V(1..F,1):=ms Ha P(1) F akkor V(P(1),1):=gaz Cklus =2-től N-g Cklus =1-től F-g V(,):==P() vagy V(,-1) vagy P() és V(-P(),-1) Cklus vége Cklus vége Lehet:=V(F,N) Függvény vége. A futás dő O(N*F) Memóragény: N*F :18 Zsakó László: Dnamkus programozás 75/78

76 Dnamkus programozás Memóragény csökkentés: elég egyetlen sort tároln a V mátrxból, és az első feltétel s megtakaríttó. Pénzváltás(Lehet): W(1..F):=ms; W():=gaz Ha P(1) F akkor W(P(1)):=gaz Cklus =2-től N-g Cklus =F-től 1-g -1-esével W():=W() vagy P() és W(-P()) Cklus vége Cklus vége Lehet:=W(F) Függvény vége. A futás dő O(N*F) Memóragény: F :18 Zsakó László: Dnamkus programozás 76/78

77 Dnamkus programozás Feladat: Adott P 1,P 2, P n pénzjegyek közül melyekkel fzethető k F fornt? Megoldás: Legyen V(,) a legutolsó olyan k ndex, amelyre gaz, hogy P k előfordul felváltásában! Legyen V(,)=N+1, nem válttó fel az első pénzjeggyel! :18 Zsakó László: Dnamkus programozás 77/78

78 Dnamkus programozás Feladat: Adott P 1,P 2, P n pénzjegyek közül melyekkel fzethető k F fornt? Megoldás: egyébként N N P V és P N V V és N V 1 1, 1, 1, 1, :18 Zsakó László: Dnamkus programozás 78/78

79 Dnamkus programozás Pénzváltás: A V mátrx kszámolása. V(1..F,):=N+1; V(,):= Cklus =1-től N-g V(,):= Cklus =1-től F-g Ha V(,-1) N akkor V(,):=V(,-1) különben P() és V(-P(),-1) N akkor V(,):= különben V(,):=N+1 Cklus vége Cklus vége V N 1, V, 1 V, 1 N 1 egyébként P N és és V P, :18 Zsakó László: Dnamkus programozás 79/78 N

80 Dnamkus programozás Csak akkor van megoldás, V(F,N) N. Ekkor k=v(f,n) olyan pénz ndexe, hogy F-P(k) felválttó az első k-1 pénzzel. Tehát a V(F-P(k),k-1) probléma megoldásával kell folytatnunk, mndaddg, amíg a maradék pénz nem lesz :18 Zsakó László: Dnamkus programozás 8/78

81 Dnamkus programozás Db:=; :=F; :=N Ha V(F,N) N akkor Cklus :=V(x,) Db:=Db+1; A(Db):= :=-P() :=-1 amíg Cklus vége Eljárás vége. A megoldás előállítása :18 Zsakó László: Dnamkus programozás 81/78

82 Dnamkus programozás Feladat: Adott P 1,P 2, P n pénzjegyek közül a lehető legkevesebbet sználva mennyvel fzethető k F fornt? Megoldás: Tegyük fel, hogy F P P P... optmáls m felbontás! Ekkor F P P P... P... m s optmáls, azaz m 1 2 m 1 1 az adott részproblémának megoldása a megoldás megfelelő részlete. m :18 Zsakó László: Dnamkus programozás 82/78

83 Dnamkus programozás Feladat: Adott P 1,P 2, P n pénzjegyek közül a lehető legkevesebbet sználva mennyvel fzethető k F fornt? Megoldás: P és P O O P és O és N O 1, 1,1, mn 1, 1, :18 Zsakó László: Dnamkus programozás 83/78

84 O Dnamkus programozás Pénzváltás(Mnmum): O(1..F,):=N+1; O(,):= Cklus =1-től N-g O(,):= Cklus =1-től F-g Ha <P() akkor O(,):=O(,-1) különben O(,):=mn(O(,-1), 1+O(-P(),-1)) Cklus vége Cklus vége Eljárás vége., mn O N 1 O, 1, 1,1 O P, :18 Zsakó László: Dnamkus programozás 84/78 és és és P P

85 Dnamkus programozás Feladat: Adott P 1,P 2, P n pénzjegyek közül a lehető legkevesebbet sználva melyekkel fzethető k F fornt? Megoldás: Tegyük fel, hogy F P P P... optmáls m felbontás! Ekkor F P P P... P... m s optmáls, azaz m 1 2 m 1 1 az adott részproblémának megoldása a megoldás megfelelő részlete. m :18 Zsakó László: Dnamkus programozás 85/78

86 Dnamkus programozás Feladat: Adott P 1,P 2, P n pénzjegyek közül a lehető legkevesebbet sználva melyekkel fzethető k F fornt? Megoldás: egyébként V P O O és P és N V 1, 1, 1 ), ( 1, :18 Zsakó László: Dnamkus programozás 86/78

87 Dnamkus programozás Pénzváltás(O,V): O(1..F):=N+1; O():=; V(1..F,):=N+1 Cklus =1-től N-g O():=; V(,):= Cklus =F-től 1-g -1-esével Ha P() akkor S:=O(-P())+1 különben S:=N+1 Ha S<O() akkor O():=S; V(,):= különben V(,):=V(,-1) Cklus vége Cklus vége Eljárás vége. V, V N 1, 1 egyébként P és és O(, ) 1 O :18 Zsakó László: Dnamkus programozás 87/78 P, 1

88 Dnamkus programozás Feladat: Két testvér adott értékű ajándékokon osztozkodk. Mnden egyes ajándékot pontosan ez egyk testvérnek kell adn. Készíts testvéres osztozkodást, azaz olyat, amelyben a két testvér által kapott ajándékok értéke különbségének abszolút értéke mnmáls! Megoldás: Ha az ajándékok összértéke E, akkor a feladat megoldása a legnagyobb olyan A E/2 szám, amely érték az ajándékok értékeből kétféleképpen s előállíttó. Tehát a megoldás vsszavezethető a pénzváltás probléma megoldására :18 Zsakó László: Dnamkus programozás 88/78

89 Megoldás: V(,): V:==P() vagy Dnamkus programozás V P x, gaz 1 és V, 1 >1 és V(,-1) vagy >1 és P() és V(-P(),-1) Függvény vége. A megoldás: a legnagyobb olyan A kválasztása (1 és E/2 között), amelyre V(A,N) gaz. 1 és P és V P, 1 Probléma: a futás dő O(2 N ) :18 Zsakó László: Dnamkus programozás 89/78

90 Dnamkus programozás V(,) kszámításához mely V() értékekre lehet szükség? Az ábra alapján V értéke alulról felfelé, azon belül balról jobbra számoltók :18 Zsakó László: Dnamkus programozás 9/78

91 Dnamkus programozás Testvéres osztozkodás(a): V(1..E,1):=ms Ha P(1) E akkor V(P(1),1):=gaz Cklus =2-től N-g Cklus =1-től E-g V(,):==P() vagy V(,-1) vagy P() és V(-P(),-1) Cklus vége Cklus vége Eredmény megadása(a,v,e,n) Függvény vége. A futás dő O(N*F) Memóragény: N*F :18 Zsakó László: Dnamkus programozás 91/78

92 Dnamkus programozás Eredmény megadása(a,v,e,n): A:=E/2 Cklus amíg nem V(A,N) A:=A-1 Cklus vége Függvény vége :18 Zsakó László: Dnamkus programozás 92/78

93 Dnamkus programozás Feladat: Két testvér adott értékű ajándékokon osztozkodk. Mnden egyes ajándékot pontosan ez egyk testvérnek kell adn. Készíts gazságos osztozkodást, azaz olyat, amelyben a két testvér által kapott ajándékok értéke egyforma, a maradék értéke pedg mnmáls! Megoldás: Ha az ajándékok összértéke E, mndkét testvér A értékű ajándékot kap. A feladat megoldása a legnagyobb olyan A E/2 szám, amely érték az ajándékok értékeből kétféleképpen előállíttó. Tehát a megoldás vsszavezethető a pénzváltás probléma megoldására :18 Zsakó László: Dnamkus programozás 93/78

94 Dnamkus programozás Megoldás: Legyen V(,Y,) gaz, az első ajándékból és Y értékű s előállíttó úgy, hogy mndegyk szám legfeljebb az egyk összegben szerepel! Legyen V(,,)=gaz mnden -re, V(,Y,) ms mnden,y-ra! V(,Y,)-re a következő rekurzív összefüggés írtó fel > esetén: V,Y, gaz V,Y, 1 P P Y és és V P,Y, 1 V, Y P, :18 Zsakó László: Dnamkus programozás 94/78

95 Dnamkus programozás Megoldás: Legyen V(,Y,) gaz, az első ajándékból és Y érték s előállíttó úgy, hogy mndegyk legfeljebb az egyk összegben szerepel! Legyen V(,,)=gaz mnden -re, V(,Y,) ms mnden,y-ra! V(,Y,): Ha = akkor V:=ms különben = és Y= akkor V:=gaz különben V:=V(,Y,-1) vagy P() és V(-P(),Y,-1) vagy P()Y és V(,Y-P(),-1) Függvény vége. A megoldás: a legnagyobb olyan A kválasztása (1 és E/2 között), amelyre V(A,A,N) gaz :18 Zsakó László: Dnamkus programozás 95/78

96 Dnamkus programozás Igazságos osztozkodás(a): V(1..E,1..E,1):=ms; V(,,1):=gaz Ha P(1) E akkor V(P(1),,1):=gaz V(,P(1),1):=gaz Cklus =2-től N-g Cklus =1-től E-g Cklus Y=1-től E-g V(,Y,):=V(,Y,-1) vagy P() és V(-P(),Y,-1) vagy P()Y és V(,Y-P(),-1) Cklus vége Cklus vége Eredmény megadása(a,v,e,n) Függvény vége :18 Zsakó László: Dnamkus programozás 96/78

97 Dnamkus programozás Eredmény megadása(a,v,e,n): A:=E/2 Cklus amíg nem V(A,A,N) A:=A-1 Cklus vége Függvény vége :18 Zsakó László: Dnamkus programozás 97/78

98 Dnamkus programozás stratégája A dnamkus programozás stratégája 1. Az [optmáls] megoldás szerkezetének tanulmányozása. 2. Részproblémákra és összetevőkre bontás úgy, hogy: az összetevőktől való függés körmentes legyen; mnden részprobléma [optmáls] megoldása kfejezhető legyen (rekurzívan) az összetevők [optmáls] megoldásaval. 3. Részproblémák [optmáls] megoldásának kfejezése (rekurzívan) az összetevők [optmáls] megoldásaból :18 Zsakó László: Dnamkus programozás 98/78

99 Dnamkus programozás stratégája 4. Részproblémák [optmáls] megoldásának kszámítása alulról-felfelé ladva: A részproblémák kszámítás sorrendjének megtározása. Olyan sorba kell rakn a részproblémákat, hogy mnden p részprobléma mnden összetevője ( van) előbb szerepeljen a felsorolásban, mnt p. A részproblémák kszámítása alulról-felfelé ladva, azaz táblázatktöltéssel. 5. Egy [optmáls] megoldás előállítása a 4. lépésben kszámított (és tárolt) nformácókból :18 Zsakó László: Dnamkus programozás 99/78

100 Dnamkus programozás tovább feladatok DNS A bológa szekvencák, különösen a DNS szekvencák vzsgálata nagyon fontos kutatás terület. Mnden DNS szekvenca leírtó olyan karaktersorozattal, amely csak az A, C, G és T karaktereket tartalmaztja. Számítsd k egy DNS szekvencának egy pontosan K betűből álló részsorozatát, amely a legtöbbször fordul elő a vzsgált szekvencában! :18 Zsakó László: Dnamkus programozás 1/78

101 Dnamkus programozás tovább feladatok LEFED Azt mondjuk, hogy egész számok zárt ntervallumanak egy H lmaza lefed az [1,N] ntervallumot, az ntervallum mnden x eleméhez van olyan ntervallum H-ban, amelynek x eleme. Egy lefedés költségén a lefedéshez sznált ntervallumok hosszanak összegét értjük. Számítsd k, hogy adott [1,N] lefedendő ntervallum és lefedéshez sználtó ntervallumok egy H lmaza esetén mekkora a mnmáls lefedés költsége, létezk lefedés! :18 Zsakó László: Dnamkus programozás 11/78

102 Dnamkus programozás tovább feladatok KÉPÁTLÓ Adott egy N x N pxelből álló fekete-fehér kép. Szeretnénk a képen a bal felső saroktól a jobb alsó sarokg egy jobbra-lefele ladó tárvonalat húzn úgy, hogy a vonaltól jobbra-felfele eső fekete, valamnt a vonaltól balra-lefele eső fehér pxelek számának K összege a lehető legkevesebb legyen. A tárvonalra eső pxelek nem számítanak bele. Add meg a mnmáls lyen K értéket! :18 Zsakó László: Dnamkus programozás 12/78

103 Dnamkus programozás tovább feladatok CSOMAG A csomagküldő szolgálat központjában a beérkezés sorrendjében várakoznak a csomagok továbbításra. Mnden csomagnak smert a súlya. A cégnek két kamonja van, mndegyk azonos K kapactású. Mnden csomag súlya legfeljebb K. A lehető legtöbb csomagot akarják továbbítan a két kamonnal. Kszámítandó az a legnagyobb M szám (1 M N), hogy a sorban első M csomag mndegyke felpakoltó a két kamon valamelykére! :18 Zsakó László: Dnamkus programozás 13/78

104 Dnamkus programozás tovább feladatok PAKOLÁS Egy raktárból konténereket kell elszállítan K kamonnal. A konténerek egy sorban egymás után helyezkednek el. Mnden konténer súlyát smerjük. Mnden kamonra csak a sorban egymást követő konténerek pakoltók. Azt szeretnék elérn, hogy a lehető legegyenletesebb legyen a kamonok terhelése, am azt jelent, hogy a maxmálsan terhelt kamon terhelése a lehető legksebb legyen. A kamonok súlykapactása legalább akkora, hogy mndegyk bztosan elbírja a rárakandó konténerek súlyát. Mnden kamonra legalább egy konténert kell rakn. Számíts k egy legegyenletesebb pakolást! :18 Zsakó László: Dnamkus programozás 14/78

105 Dnamkus programozás előadás vége

Algoritmusok és adatszerkezetek I. 10. előadás

Algoritmusok és adatszerkezetek I. 10. előadás Algortmusok és adatszerkezetek I. 10. előadás Dnamkus programozás Feladat: Adott P 1,P 2, P n pénzjegyekkel kfzethető-e F fornt? Megoldás: Tegyük fel, hogy F P P... P... m! 1 2 m 1 Ekkor F P P P P......,

Részletesebben

Dinamikus programozás

Dinamikus programozás Dnamkus programozás (Horváth Gyula és Szláv Péter előadása felsználásával) Dnamkus programozás Feladat: Adott P 1,P 2, P n pénzjegyekkel kfzethető-e F fornt? Megoldás: Tegyük fel, hogy F P P... P... m!

Részletesebben

Dinamikus programozás

Dinamikus programozás Dnamkus programozás (Horváth Gyula és Szláv Péter előadása felhasználásával) Dnamkus programozás Feladat: Adott P,P 2, P n pénzjegyekkel kfzethető-e F fornt? Megoldás: Tegyük fel, hogy F P P... P...! 2

Részletesebben

Dinamikus programozás II.

Dinamikus programozás II. Dinamikus programozás II. Dinamikus programozás stratégiája A dinamikus programozás stratégiája 1. Az [optimális] megoldás szerkezetének tanulmányozása. 2. Részproblémákra és összetevőkre bontás úgy, hogy:

Részletesebben

Algoritmizálás, adatmodellezés tanítása 8. előadás

Algoritmizálás, adatmodellezés tanítása 8. előadás Algoritmizálás, adatmodellezés tanítása 8. előadás Elágazás és korlátozás A backtrack alkalmas-e optimális megoldás keresésére? Van költség, és a legkisebb költségű megoldást szeretnénk előállítani. Van

Részletesebben

8. Programozási tételek felsoroló típusokra

8. Programozási tételek felsoroló típusokra 8. Programozás tételek felsoroló típusokra Ha egy adatot elem értékek csoportja reprezentál, akkor az adat feldolgozása ezen értékek feldolgozásából áll. Az lyen adat típusának lényeges jellemzője, hogy

Részletesebben

A 2008/2009 tanévi Országos Középiskolai Tanulmányi Verseny első forduló feladatainak megoldása. INFORMATIKÁBÓL II. (programozás) kategóriában

A 2008/2009 tanévi Országos Középiskolai Tanulmányi Verseny első forduló feladatainak megoldása. INFORMATIKÁBÓL II. (programozás) kategóriában Oktatási Hivatal A 2008/2009 tanévi Országos Középiskolai Tanulmányi Verseny első forduló feladatainak megoldása INFORMATIKÁBÓL II. (programozás) kategóriában Kérjük a tisztelt tanár kollégákat, hogy a

Részletesebben

A 2010/2011 tanévi Országos Középiskolai Tanulmányi Verseny második fordulójának megoldása. II. (programozás) kategória

A 2010/2011 tanévi Országos Középiskolai Tanulmányi Verseny második fordulójának megoldása. II. (programozás) kategória Oktatási Hivatal A 20/2011 tanévi Országos Középiskolai Tanulmányi Verseny második fordulójának megoldása II. (programozás) kategória Kérjük a tisztelt kollégákat, hogy az egységes értékelés érdekében

Részletesebben

Partíció probléma rekurzíómemorizálással

Partíció probléma rekurzíómemorizálással Partíció probléma rekurzíómemorizálással A partíciószám rekurzív algoritmusa Ω(2 n ) műveletet végez, pedig a megoldandó részfeladatatok száma sokkal kisebb O(n 2 ). A probléma, hogy bizonyos már megoldott

Részletesebben

Algoritmusok és adatszerkezetek gyakorlat 09 Rendezések

Algoritmusok és adatszerkezetek gyakorlat 09 Rendezések Algortmusok és adatszerkezetek gyakorlat 09 Rendezések Néhány órával ezelőtt megsmerkedtünk már a Merge Sort rendező algortmussal. A Merge Sort-ról tuduk, hogy a legrosszabb eset dőgénye O(n log n). Tetszőleges

Részletesebben

Fibonacci számok. Dinamikus programozással

Fibonacci számok. Dinamikus programozással Fibonacci számok Fibonacci 1202-ben vetette fel a kérdést: hány nyúlpár születik n év múlva, ha feltételezzük, hogy az első hónapban csak egyetlen újszülött nyúl-pár van; minden nyúlpár, amikor szaporodik

Részletesebben

4 2 lapultsági együttható =

4 2 lapultsági együttható = Leíró statsztka Egy kísérlet végeztével általában tetemes mennységű adat szokott összegyűln. Állandó probléma, hogy mt s kezdjünk - lletve mt tudunk kezden az adatokkal. A statsztka ebben segít mnket.

Részletesebben

ALGORITMUSOK, ALGORITMUS-LEÍRÓ ESZKÖZÖK

ALGORITMUSOK, ALGORITMUS-LEÍRÓ ESZKÖZÖK ALGORITMUSOK, ALGORITMUS-LEÍRÓ ESZKÖZÖK 1. ALGORITMUS FOGALMA ÉS JELLEMZŐI Az algortmus egyértelműen végreajtató tevékenység-, vagy utasítássorozat, amely véges sok lépés után befejeződk. 1.1 Fajtá: -

Részletesebben

Adatsorok jellegadó értékei

Adatsorok jellegadó értékei Adatsorok jellegadó értéke Varga Ágnes egyetem tanársegéd varga.ag14@gmal.com Terület és térnformatka kvanttatív elemzés módszerek BCE Geo Intézet Terület elemzés forgatókönyve vacsora hasonlat Terület

Részletesebben

Mátrix-vektor feladatok Összeállította dr. Salánki József egyetemi adjunktus Begépelte Dr. Dudás László és Bálint Gusztáv

Mátrix-vektor feladatok Összeállította dr. Salánki József egyetemi adjunktus Begépelte Dr. Dudás László és Bálint Gusztáv Mátrx-vektor feldtok Összeállított dr. Slánk József egyetem djunktus Begépelte Dr. Dudás László és Bálnt Gusztáv 1. feldt Adottk z n elemű, b vektorok. Képezn kell c vektort, hol c = b / Σ( ), ( = 0,1,,

Részletesebben

Statisztikai próbák. Ugyanazon problémára sokszor megvan mindkét eljárás.

Statisztikai próbák. Ugyanazon problémára sokszor megvan mindkét eljárás. Statsztka próbák Paraméteres. A populácó paraméteret becsüljük, ezekkel számolunk.. Az alapsokaság eloszlására van kkötés. Nem paraméteres Nncs lyen becslés Nncs kkötés Ugyanazon problémára sokszor megvan

Részletesebben

Egy negyedrendű rekurzív sorozatcsaládról

Egy negyedrendű rekurzív sorozatcsaládról Egy negyedrendű rekurzív sorozatcsaládról Pethő Attla Emlékül Kss Péternek, a rekurzív sorozatok fáradhatatlan kutatójának. 1. Bevezetés Legyenek a, b Z és {1, 1} olyanok, hogy a 2 4b 2) 0, b 2 és ha 1,

Részletesebben

Bevezetés a programozásba. 3. Előadás Algoritmusok, tételek

Bevezetés a programozásba. 3. Előadás Algoritmusok, tételek Bevezetés progrmozásb 3. Elődás Algortmusok, tételek ISMÉTLÉS Specfkácó Előfeltétel: mlyen körülmények között követelünk helyes működést Utófeltétel: mt várunk kmenettől, m z összefüggés kmenet és bemenet

Részletesebben

Dinamukus programozás

Dinamukus programozás Dinamukus programozás Horváth Gyula horvath@inf.elte.hu 2. Dinamikus programozással megoldható feladatok A dinamikus programozás elnevezés egy probléma-megoldási módszert jelöl. A módszer lényege, hogy

Részletesebben

Algoritmizálás. Horváth Gyula Szegedi Tudományegyetem Természettudományi és Informatikai Kar horvath@inf.u-szeged.hu

Algoritmizálás. Horváth Gyula Szegedi Tudományegyetem Természettudományi és Informatikai Kar horvath@inf.u-szeged.hu Algoritmizálás Horváth Gyula Szegedi Tudományegyetem Természettudományi és Informatikai Kar horvath@inf.u-szeged.hu 4. Dinamikus programozással megoldható feladatok A dinamikus programozás elnevezés egy

Részletesebben

Fuzzy rendszerek. A fuzzy halmaz és a fuzzy logika

Fuzzy rendszerek. A fuzzy halmaz és a fuzzy logika Fuzzy rendszerek A fuzzy halmaz és a fuzzy logka A hagyományos kétértékű logka, melyet évezredek óta alkalmazunk a tudományban, és amelyet George Boole (1815-1864) fogalmazott meg matematkalag, azon a

Részletesebben

4 205 044-2012/11 Változtatások joga fenntartva. Kezelési útmutató. UltraGas kondenzációs gázkazán. Az energia megőrzése környezetünk védelme

4 205 044-2012/11 Változtatások joga fenntartva. Kezelési útmutató. UltraGas kondenzációs gázkazán. Az energia megőrzése környezetünk védelme HU 4 205 044-2012/11 Változtatások joga fenntartva Kezelés útmutató UltraGas kondenzácós gázkazán Az energa megőrzése környezetünk védelme Tartalomjegyzék UltraGas 15-1000 4 205 044 1. Kezelés útmutató

Részletesebben

9. Visszavezetés egyedi felsorolókkal

9. Visszavezetés egyedi felsorolókkal 9. Vsszavezetés egyed felsorolókkal Ebben a fejezetben a hét általános programozás tételt olyan feladatok megoldására alkalmazzuk, ahol nem lehet nevezetes felsorolókat sználn, azaz a Frst(), Next(), End()

Részletesebben

Adatszerkezetek II. 10. előadás

Adatszerkezetek II. 10. előadás Adatszerkezetek II. 10. előadás Kombinatorikai algoritmusok A kombinatorika: egy véges halmaz elemeinek valamilyen szabály alapján történő csoportosításával, kiválasztásával, sorrendbe rakásával foglalkozik

Részletesebben

Algoritmizálás, adatmodellezés tanítása 7. előadás

Algoritmizálás, adatmodellezés tanítása 7. előadás Algoritmizálás, adatmodellezés tanítása 7. előadás Oszd meg és uralkodj! Több részfeladatra bontás, amelyek hasonlóan oldhatók meg, lépései: a triviális eset (amikor nincs rekurzív hívás) felosztás (megadjuk

Részletesebben

Kombinatorikai algoritmusok. (Horváth Gyula és Szlávi Péter előadásai felhasználásával)

Kombinatorikai algoritmusok. (Horváth Gyula és Szlávi Péter előadásai felhasználásával) Kombinatorikai algoritmusok (Horváth Gyula és Szlávi Péter előadásai felhasználásával) Kombinatorikai algoritmusok A kombinatorika: egy véges halmaz elemeinek valamilyen szabály alapján történő csoportosításával,

Részletesebben

A sokaság/minta eloszlásának jellemzése

A sokaság/minta eloszlásának jellemzése 3. előadás A sokaság/mnta eloszlásának jellemzése tpkus értékek meghatározása; az adatok különbözőségének vzsgálata, a sokaság/mnta eloszlásgörbéjének elemzése. Eloszlásjellemzők Középértékek helyzet (Me,

Részletesebben

Kvantum-tömörítés II.

Kvantum-tömörítés II. LOGO Kvantum-tömörítés II. Gyöngyös László BME Vllamosmérnök és Informatka Kar A kvantumcsatorna kapactása Kommunkácó kvantumbtekkel Klasszkus btek előnye Könnyű kezelhetőség Stabl kommunkácó Dszkrét értékek

Részletesebben

Kombinatorikai algoritmusok

Kombinatorikai algoritmusok Kombinatorikai algoritmusok (Horváth Gyula és Szlávi Péter előadásai felhasználásával) Kombinatorikai algoritmusok A kombinatorika: egy véges halmaz elemeinek valamilyen szabály alapján történő csoportosításával,

Részletesebben

ORVOSI STATISZTIKA. Az orvosi statisztika helye. Egyéb példák. Példa: test hőmérséklet. Lehet kérdés? Statisztika. Élettan Anatómia Kémia. Kérdések!

ORVOSI STATISZTIKA. Az orvosi statisztika helye. Egyéb példák. Példa: test hőmérséklet. Lehet kérdés? Statisztika. Élettan Anatómia Kémia. Kérdések! ORVOSI STATISZTIKA Az orvos statsztka helye Élettan Anatóma Kéma Lehet kérdés?? Statsztka! Az orvos döntéseket hoz! Mkor jó egy döntés? Mennyre helyes egy döntés? Mekkora a tévedés lehetősége? Példa: test

Részletesebben

d(f(x), f(y)) q d(x, y), ahol 0 q < 1.

d(f(x), f(y)) q d(x, y), ahol 0 q < 1. Fxponttétel Már a hétköznap életben s gyakran tapasztaltuk, hogy két pont között a távolságot nem feltétlenül a " kettő között egyenes szakasz hossza" adja Pl két település között a távolságot közlekedés

Részletesebben

Példák ekvivalencia relációra (TÉTELként kell tudni ezeket zárthelyin, vizsgán):

Példák ekvivalencia relációra (TÉTELként kell tudni ezeket zárthelyin, vizsgán): F NIK INÁRIS RLÁIÓK INÁRIS RLÁIÓK (és hasonló mátrxok s tt!) Defnícó: z R bnárs relácó, ha R {( a, b) a, b } nárs relácók lehetséges tuladonsága:. Reflexív ha ( x,.(a). Szmmetrkus ha ( x, y) ( y,.(b).

Részletesebben

Az entrópia statisztikus értelmezése

Az entrópia statisztikus értelmezése Az entrópa statsztkus értelmezése A tapasztalat azt mutatja hogy annak ellenére hogy egy gáz molekulá egyed mozgást végeznek vselkedésükben mégs szabályszerűségek vannak. Statsztka jellegű vselkedés szabályok

Részletesebben

KOMBINATORIKA ELŐADÁS osztatlan matematika tanár hallgatók számára. Szita formula

KOMBINATORIKA ELŐADÁS osztatlan matematika tanár hallgatók számára. Szita formula KOMBINATORIKA ELŐADÁS osztatlan matematka tanár hallgatók számára Szta formula Előadó: Hajnal Péter 2015. 1. Bevezető példák 1. Feladat. Hány olyan sorbaállítása van a a, b, c, d, e} halmaznak, amelyben

Részletesebben

Periodikus figyelésű készletezési modell megoldása általános feltételek mellett

Periodikus figyelésű készletezési modell megoldása általános feltételek mellett Tanulmánytár Ellátás/elosztás logsztka BME OMIKK LOGISZTIKA 9. k. 4. sz. 2004. júlus augusztus. p. 47 52. Tanulmánytár Ellátás/elosztás logsztka Perodkus fgyelésű készletezés modell megoldása általános

Részletesebben

2. forduló. MEGOLDÁSOK Pontszerző Matematikaverseny 2014/2015 tanév. 1. Számkeresztrejtvény:

2. forduló. MEGOLDÁSOK Pontszerző Matematikaverseny 2014/2015 tanév. 1. Számkeresztrejtvény: 1. Számkeresztrejtvény: MEGOLDÁSOK Pontszerző Matematikaverseny 2014/2015 tanév 2. forduló Az alábbi keresztrejtvény ábra abban különbözik a hagyományos keresztrejtvényektől, hogy a négyzet alakú mezőkbe

Részletesebben

Rekurzió. (Horváth Gyula és Szlávi Péter előadásai felhasználásával)

Rekurzió. (Horváth Gyula és Szlávi Péter előadásai felhasználásával) Rekurzió (Horváth Gyula és Szlávi Péter előadásai felhasználásával) Rekurzió és iteráció Balrekurzió Ha az eljárás első utasításaként szerepel a rekurzív hívás, akkor a rekurzió lényegében az első nem

Részletesebben

Tanult nem paraméteres próbák, és hogy milyen probléma megoldására szolgálnak.

Tanult nem paraméteres próbák, és hogy milyen probléma megoldására szolgálnak. 8. GYAKORLAT STATISZTIKAI PRÓBÁK ISMÉTLÉS: Tanult nem paraméteres próbák, és hogy mlyen probléma megoldására szolgálnak. Név Illeszkedésvzsgálat Χ próbával Illeszkedésvzsgálat grafkus úton Gauss papírral

Részletesebben

METROLÓGIA ÉS HIBASZÁMíTÁS

METROLÓGIA ÉS HIBASZÁMíTÁS METROLÓGIA ÉS HIBASZÁMíTÁS Metrológa alapfogalmak A metrológa a mérések tudománya, a mérésekkel kapcsolatos smereteket fogja össze. Méréssel egy objektum valamlyen tulajdonságáról számszerű értéket kapunk.

Részletesebben

Mohó algoritmusok. Példa:

Mohó algoritmusok. Példa: Mohó algoritmusok Optimalizálási probléma megoldására szolgáló algoritmus sokszor olyan lépések sorozatából áll, ahol minden lépésben adott halmazból választhatunk. Ezt gyakran dinamikus programozás alapján

Részletesebben

Másolásra épülő algoritmusok

Másolásra épülő algoritmusok Másolásra épülő algortmusok Tartalomjegyzék Másolás...2 Másolás és módosítás...3 Másolás és módosítás plusz...4 Tömbelemek módosítása...5 Kválogatás...6 Szétválogat...7 Unó...8 Metszet...9 Összefuttatás...10

Részletesebben

Egyszerű algoritmusok

Egyszerű algoritmusok Egyszerű algortmusok Tartalomjegyzék Összegzés...2 Maxmum kválasztás...3 Mnmum kválasztás...4 Megszámlálás...5 Eldöntés...6 Eldöntés - wle...8 Lneárs keresés...10 Készítette: Gál Tamás Creatve Commons

Részletesebben

Multihalmaz, intervallumhalmaz

Multihalmaz, intervallumhalmaz Multihalmaz, intervallumhalmaz Halmaz féleségek 1. Halmaz Gyümölcsök: {alma,körte,szilva,barack} 2. Multihalmaz Állatok: {(macska,4),(rigó,2),(galamb,3)} 3. Intervallumhalmaz diszjunkt Óráim: {[8-10],[13-14],[16-20)}

Részletesebben

The original laser distance meter. The original laser distance meter

The original laser distance meter. The original laser distance meter Leca Leca DISTO DISTO TM TM D510 X310 The orgnal laser dstance meter The orgnal laser dstance meter Tartalomjegyzék A műszer beállítása - - - - - - - - - - - - - - - - - - - - - - - - - 2 Bevezetés - -

Részletesebben

Műszaki folyamatok közgazdasági elemzése. Kevert stratégiák és evolúciós játékok

Műszaki folyamatok közgazdasági elemzése. Kevert stratégiák és evolúciós játékok Műszak folyamatok közgazdaság elemzése Kevert stratégák és evolúcós átékok Fogalmak: Példa: 1 szta stratéga Vegyes stratéga Ha m tszta stratéga létezk és a 1 m annak valószínűsége hogy az - edk átékos

Részletesebben

Visszalépéses kiválogatás

Visszalépéses kiválogatás elépő a tudás közösségébe Informatika szakköri segédanyag Heizlerné akonyi iktória, Horváth Győző, Menyhárt László, Szlávi Péter, Törley Gábor, Zsakó László Szerkesztő: Abonyi-Tóth Andor, Zsakó László

Részletesebben

Véletlenszám generátorok. 5. előadás

Véletlenszám generátorok. 5. előadás Véletlenszám generátorok 5. előadás Véletlenszerű változók, valószínűség véletlen, véletlen változók valószínűség fogalma egy adott esemény bekövetkezésének esélye értékét 0 és között adjuk meg az összes

Részletesebben

43. ORSZÁGOS TIT KALMÁR LÁSZLÓ MATEMATIKAVERSENY MEGYEI FORDULÓ HATODIK OSZTÁLY JAVÍTÁSI ÚTMUTATÓ

43. ORSZÁGOS TIT KALMÁR LÁSZLÓ MATEMATIKAVERSENY MEGYEI FORDULÓ HATODIK OSZTÁLY JAVÍTÁSI ÚTMUTATÓ 43. ORSZÁGOS TIT KALMÁR LÁSZLÓ MATEMATIKAVERSENY MEGYEI FORDULÓ HATODIK OSZTÁLY JAVÍTÁSI ÚTMUTATÓ 1. Ismerkedj a 100 tulajdonságaival! I.) Állítsd elő a 100-at a,, b, 3, c, 4, d, 5 négyzetszám összegeként!

Részletesebben

Időjárási csúcsok. Bemenet. Kimenet. Példa. Korlátok. Nemes Tihamér Nemzetközi Informatikai Tanulmányi Verseny, 2-3. korcsoport

Időjárási csúcsok. Bemenet. Kimenet. Példa. Korlátok. Nemes Tihamér Nemzetközi Informatikai Tanulmányi Verseny, 2-3. korcsoport Időjárási csúcsok Ismerjük N napra a déli hőmérséklet értékét. Lokálisan melegnek nevezünk egy napot (az első és az utolsó kivételével), ha az aznap mért érték nagyobb volt a két szomszédjánál, lokálisan

Részletesebben

MŰSZAKI TUDOMÁNYI DOKTORI ISKOLA. Napkollektorok üzemi jellemzőinek modellezése

MŰSZAKI TUDOMÁNYI DOKTORI ISKOLA. Napkollektorok üzemi jellemzőinek modellezése MŰSZAKI TUDOMÁNYI DOKTORI ISKOLA Napkollektorok üzem jellemzőnek modellezése Doktor (PhD) értekezés tézse Péter Szabó István Gödöllő 015 A doktor skola megnevezése: Műszak Tudomány Doktor Iskola tudományága:

Részletesebben

Alkalmazott modul: Programozás

Alkalmazott modul: Programozás Eötvös Loránd Tudományegyetem Informatikai Kar Alkalmazott modul: Programozás Feladatgyűjtemény Összeállította: Giachetta Roberto groberto@inf.elte.hu http://people.inf.elte.hu/groberto Frissítve: 2015.

Részletesebben

A mágneses tér energiája, állandó mágnesek, erőhatások, veszteségek

A mágneses tér energiája, állandó mágnesek, erőhatások, veszteségek A mágneses tér energája, állandó mágnesek, erőhatások, veszteségek A mágneses tér energája Egy koncentrált paraméterű, ellenállással és nduktvtással jellemzett tekercs Uáll feszültségre kapcsolásakor az

Részletesebben

OAF Gregorics Tibor: Minta dokumentáció a 4. házi feladathoz 1. Feladat. Megoldás

OAF Gregorics Tibor: Minta dokumentáció a 4. házi feladathoz 1. Feladat. Megoldás OAF Gregorcs Tbor: Mnta dokumentácó a 4. ház feladathoz 1. Feladat Adott egy szöveges fájlbel szöveg, ahol a szavakat szóközök, tabulátor-jelek, sorvége-jelek lletve a fájlvége-jel határolja. Melyk a leghosszabb

Részletesebben

Optimalizációs stratégiák 1.

Optimalizációs stratégiák 1. Optimalizációs stratégiák 1. Nyers erő, Oszd meg és uralkodj, Feljegyzéses, Dinamikus, Mohó előadás http://nik.uni-obuda.hu/prog2 Szénási Sándor szenasi.sandor@nik.uni-obuda.hu Óbudai Egyetem,Neumann János

Részletesebben

KÖZLEKEDÉSI ALAPISMERETEK (KÖZLEKEDÉS-ÜZEMVITEL)

KÖZLEKEDÉSI ALAPISMERETEK (KÖZLEKEDÉS-ÜZEMVITEL) Közlekedés alapsmeretek (közlekedés-üzemvtel) középsznt 1212 ÉRETTSÉGI VIZSGA 2012. május 25. KÖZLEKEDÉSI ALAPISMERETEK (KÖZLEKEDÉS-ÜZEMVITEL) KÖZÉPSZINTŰ ÍRÁSBELI ÉRETTSÉGI VIZSGA JAVÍTÁSI-ÉRTÉKELÉSI

Részletesebben

ű ú ü ü ü ü ü ü Á ü ú ü Á Á Á É Ö Ö Ö Á É É ü Á ú ű ú Í Á Í Á ű ü ű ü Ö ű ű É ú ű ú Á Á ű ü ú ű ú ü ú ú Ó ü ű ü ü Í ü Í Í Í Ó ú ú ú ú ú ú ü ú Í Ó ű ú ű Á Á ü ü ú É Í Ü ű ü ü Á ü ú Í É ú Ó Ö ú Ó Ó Ó Í ú

Részletesebben

A 2014/2015 tanévi Országos Középiskolai Tanulmányi Verseny második forduló javítási-értékelési útmutató. INFORMATIKA II. (programozás) kategória

A 2014/2015 tanévi Országos Középiskolai Tanulmányi Verseny második forduló javítási-értékelési útmutató. INFORMATIKA II. (programozás) kategória Oktatási Hivatal A 2014/2015 tanévi Országos Középiskolai Tanulmányi Verseny második forduló javítási-értékelési útmutató INFORMATIKA II. (programozás) kategória Kérjük a tisztelt kollégákat, hogy az egységes

Részletesebben

4 Approximációs algoritmusok szorzatalakú hálózatok esetén

4 Approximációs algoritmusok szorzatalakú hálózatok esetén 4 Approxmácós algortmusok szorzatalakú hálózatok esetén Az MVA-n alapuló approxmácó (Bard-Schwetzer-módszer): Beérkezés tétel: T () = 1 µ [1+ ( 1) ], =1,...,N Iterácó a következő approxmácó használatával:

Részletesebben

A 2017/2018 tanévi Országos Középiskolai Tanulmányi Verseny első fordulójának feladatai. INFORMATIKA II. (programozás) kategória

A 2017/2018 tanévi Országos Középiskolai Tanulmányi Verseny első fordulójának feladatai. INFORMATIKA II. (programozás) kategória Oktatási Hivatal A 2017/2018 tanévi Országos Középiskolai Tanulmányi Verseny első fordulójának feladatai 1. feladat: Repülők (20 pont) INFORMATIKA II. (programozás) kategória Ismerünk városok közötti repülőjáratokat.

Részletesebben

3. Előadás. Megyesi László: Lineáris algebra, oldal. 3. előadás Lineáris egyenletrendszerek

3. Előadás. Megyesi László: Lineáris algebra, oldal. 3. előadás Lineáris egyenletrendszerek 3. Előadás Megyesi László: Lineáris algebra, 47. 50. oldal. Gondolkodnivalók Determinánsok 1. Gondolkodnivaló Determinánselméleti tételek segítségével határozzuk meg a következő n n-es determinánst: 1

Részletesebben

Közúti közlekedésüzemvitel-ellátó. Tájékoztató

Közúti közlekedésüzemvitel-ellátó. Tájékoztató 12/2013. (III. 29.) NFM rendelet szakma és vzsgakövetelménye alapján. Szakképesítés, azonosító száma és megnevezése 54 841 02 Közút közlekedésüzemvtel-ellátó Tájékoztató A vzsgázó az első lapra írja fel

Részletesebben

Relációk. Vázlat. Példák direkt szorzatra

Relációk. Vázlat. Példák direkt szorzatra 8.. 7. elácók elácó matematka fogalma zükséges fogalom: drekt szorzat Halmazok Descartes drekt szorzata: Legenek D D D n adott doman halmazok. D D D n : = { d d d n d k D k k n } A drekt szorzat tehát

Részletesebben

Véletlenszám generátorok. 6. előadás

Véletlenszám generátorok. 6. előadás Véletlenszám generátorok 6. előadás Véletlenszerű változók, valószínűség véletlen, véletlen változók valószínűség fogalma egy adott esemény bekövetkezésének esélye értékét 0 és között adjuk meg az összes

Részletesebben

Vázlat. Relációk. Példák direkt szorzatra

Vázlat. Relációk. Példák direkt szorzatra 7..9. Vázlat elácók a. elácó fogalma b. Tulajdonsága: refleív szmmetrkus/antszmmetrkus tranztív c. Ekvvalenca relácók rzleges/parcáls rrendez relácók felsmere d. elácók reprezentálása elácó matematka fogalma

Részletesebben

Gyakorlatok. P (n) = P (n 1) + 2P (n 2) + P (n 3) ha n 4, (utolsó lépésként l, hl, u, hu-t léphetünk).

Gyakorlatok. P (n) = P (n 1) + 2P (n 2) + P (n 3) ha n 4, (utolsó lépésként l, hl, u, hu-t léphetünk). Gyakorlatok Din 1 Jelölje P (n) azt a számot, ahányféleképpen mehetünk le egy n lépcsőfokból álló lépcsőn a következő mozgáselemek egy sorozatával (zárójelben, hogy mennyit mozgunk az adott elemmel): lépés

Részletesebben

Die Sensation in der Damenhygiene Hasznos információk a tamponokról www.123goodbye.com

Die Sensation in der Damenhygiene Hasznos információk a tamponokról www.123goodbye.com nokról tampo a k ácó form n s no Hasz Mért használnak tamponokat? A tampon szó francául és a szó szernt fordításban dugó. Már a szó s sokat mond. A tamponok körülbelül öt centméteres rudak, amely közel

Részletesebben

Programozási módszertan. Mohó algoritmusok

Programozási módszertan. Mohó algoritmusok PM-08 p. 1/17 Programozási módszertan Mohó algoritmusok Werner Ágnes Villamosmérnöki és Információs Rendszerek Tanszék e-mail: werner.agnes@virt.uni-pannon.hu PM-08 p. 2/17 Bevezetés Dinamikus programozás

Részletesebben

Mohó stratégia. Feladat: Megoldás:

Mohó stratégia. Feladat: Megoldás: I. Feladat: Egy kábelhálózat különböző csatornáin N filmet játszanak. Ismerjük mindegyik film kezdési és végidejét. Egyszerre csak 1 filmet tudunk nézni. Add meg, hogy maximum hány filmet nézhetünk végig!

Részletesebben

Töréskép optimalizálás Elmélet, megvalósítás, alkalmazás

Töréskép optimalizálás Elmélet, megvalósítás, alkalmazás Elmélet, megvalósítás, alkalmazás Készítették: Borbély Dánel Szerkezet-építőmérnök Msc hallgató Borbély Gábor Alkalmazott matematka Msc hallgató Koppány Zoltán Földmérő- és Térnformatka mérnök Msc hallgató

Részletesebben

XI. ERDÉLYI TUDOMÁNYOS DIÁKKÖRI KONFERENCIA

XI. ERDÉLYI TUDOMÁNYOS DIÁKKÖRI KONFERENCIA XI. ERDÉLYI TUDOMÁNYOS DIÁKKÖRI KONFERENCIA KOLOZSVÁR, MÁJUS 23-24 OBJEKTUM-ORIENTÁLT ADATBÁZIS RENDSZEREK INDEXELÉSE Irányító tanár: Dr. Varga Vorca, Docens Babes-Bolya Tudományegyetem, Matematka és Informatka

Részletesebben

Dr. Ratkó István. Matematikai módszerek orvosi alkalmazásai. 2010.11.08. Magyar Tudomány Napja. Gábor Dénes Főiskola

Dr. Ratkó István. Matematikai módszerek orvosi alkalmazásai. 2010.11.08. Magyar Tudomány Napja. Gábor Dénes Főiskola Dr. Ratkó István Matematka módszerek orvos alkalmazása 200..08. Magyar Tudomány Napja Gábor Dénes Főskola A valószínűségszámítás és matematka statsztka főskola oktatásakor a hallgatók néha megkérdezk egy-egy

Részletesebben

oktatási segédlet Kovács Norbert SZE, Gazdálkodástudományi tanszék 2007. október

oktatási segédlet Kovács Norbert SZE, Gazdálkodástudományi tanszék 2007. október Fogyasztók a tõkepacon oktatás segédlet Kovács Norbert SZE, Gazdálkodástudomány tanszék 007. október Költségvetés egyenes kamatláb esetén. dõszak fogyasztása A. év fogyasztásának maxmuma költségvetés egyenes

Részletesebben

KÖZBESZERZÉSI ADATBÁZIS

KÖZBESZERZÉSI ADATBÁZIS 14. melléklet a 44/2015. (XI. 2.) MvM rendelethez KÖZBESZERZÉSI DTBÁZIS Összegez az ajánlatok elbírálásáról I. szakasz: kérő I.1) Név címek 1 (jelölje meg az eljárásért felelős összes ajánlatkérőt) Hvatalos

Részletesebben

Leica DISTOTMD510. X310 The original laser distance meter. The original laser distance meter

Leica DISTOTMD510. X310 The original laser distance meter. The original laser distance meter TM Leca DISTO Leca DISTOTMD510 X10 The orgnal laser dstance meter The orgnal laser dstance meter Tartalomjegyzék A műszer beállítása - - - - - - - - - - - - - - - - - - - - - - - - - 2 Bevezetés - - -

Részletesebben

10. Alakzatok és minták detektálása

10. Alakzatok és minták detektálása 0. Alakzatok és mnták detektálása Kató Zoltán Képfeldolgozás és Számítógépes Grafka tanszék SZTE http://www.nf.u-szeged.hu/~kato/teachng/ 2 Hough transzformácó Éldetektálás során csak élpontok halmazát

Részletesebben

Adatszerkezetek II. 6. előadás

Adatszerkezetek II. 6. előadás Adatszerkezetek II. 6. előadás Feladat: Egy kábelhálózat különböző csatornáin N filmet játszanak. Ismerjük mindegyik film kezdési és végidejét. Egyszerre csak 1 filmet tudunk nézni. Add meg, hogy maximum

Részletesebben

Dinamikus programozás

Dinamikus programozás Dinamikus programozás Horváth Gyula horvath@inf.elte.hu 2. Dinamikus programozással megoldható feladatok A dinamikus programozás elnevezés egy probléma-megoldási módszert jelöl. A módszer lényege, hogy

Részletesebben

OKTV 2007/2008 Informatika II. kategória döntő forduló Feladatlap. Oktatási Hivatal

OKTV 2007/2008 Informatika II. kategória döntő forduló Feladatlap. Oktatási Hivatal Feladatlap Kedves Versenyző! A megoldások értékelésénél csak a programok futási eredményeit vesszük tekintetbe. Ezért igen fontos a specifikáció pontos betartása. Ha például a feladat szövege adatok valamilyen

Részletesebben

BBTE Matek-Infó verseny mintatételsor Informatika írásbeli vizsga

BBTE Matek-Infó verseny mintatételsor Informatika írásbeli vizsga BABEȘ BOLYAI TUDOMÁNYEGYETEM MATEMATIKA ÉS INFORMATIKA KAR A. tételsor (30 pont) 1. (5p) Tekintsük a következő alprogramot: Alprogram f(a): Ha a!= 0, akkor visszatérít: a + f(a - 1) különben visszatérít

Részletesebben

Integrált rendszerek n é v; dátum

Integrált rendszerek n é v; dátum Integrált rendszerek n é v; dátum.) Az dentfkálás (folyamatdentfkácó) a.) elsődleges feladata absztrahált leírás fzka modell formában b.) legfőbb feladata a struktúradentfkálás (modellszerkezet felállítása)

Részletesebben

Döntéstámogató módszerek segédlet

Döntéstámogató módszerek segédlet Döntéstámogató módszerek segédlet. Jelölések és defnícók.... Út, vágás egy rányított élhalmazban... 4. Maxmáls út mnmáls potencál... 7 4. Mnmáls út maxmáls potencál... 5. Maxmáls folyam mnmáls vágás...

Részletesebben

IT jelű DC/DC kapcsolóüzemű tápegységcsalád

IT jelű DC/DC kapcsolóüzemű tápegységcsalád IT jelű DC/DC kapcsolóüzemű tápegységcsalád BALOGH DEZSŐ BHG BEVEZETÉS A BHG Híradástechnka Vállalat kutató és fejlesztő által kdolgozott napjankban gyártásban levő tárolt programvezérlésű elektronkus

Részletesebben

Alkalmazott modul: Programozás 4. előadás. Procedurális programozás: iteratív és rekurzív alprogramok. Alprogramok. Alprogramok.

Alkalmazott modul: Programozás 4. előadás. Procedurális programozás: iteratív és rekurzív alprogramok. Alprogramok. Alprogramok. Eötvös Loránd Tudományegyetem Informatikai Kar Alkalmazott modul: Programozás 4. előadás Procedurális programozás: iteratív és rekurzív alprogramok Giachetta Roberto groberto@inf.elte.hu http://people.inf.elte.hu/groberto

Részletesebben

A 2013/2014 tanévi Országos Középiskolai Tanulmányi Verseny első forduló javítási-értékelési útmutató. INFORMATIKA II. (programozás) kategória

A 2013/2014 tanévi Országos Középiskolai Tanulmányi Verseny első forduló javítási-értékelési útmutató. INFORMATIKA II. (programozás) kategória Oktatási Hivatal 2013/2014 tanévi Országos Középiskolai Tanulmányi Verseny első forduló javítási-értékelési útmutató INFORMTIK II. (programozás) kategória Kérjük a tisztelt tanár kollégákat, hogy a dolgozatokat

Részletesebben

MATEMATIKAI STATISZTIKA KISFELADAT. Feladatlap

MATEMATIKAI STATISZTIKA KISFELADAT. Feladatlap Közlekedésmérnök Kar Jármőtervezés és vzsgálat alapja I. Feladatlap NÉV:..tk.:. Feladat sorsz.:.. Feladat: Egy jármő futómő alkatrész terhelésvzsgálatakor felvett, az alkatrészre ható terhelı erı csúcsértékek

Részletesebben

Schlüter -KERDI-BOARD. Közvetlenűl burkolható felületű építőlemez, többrétegű vízszigetelés

Schlüter -KERDI-BOARD. Közvetlenűl burkolható felületű építőlemez, többrétegű vízszigetelés Schlüter -KERDI-BOARD Közvetlenűl burkolható felületű építőlemez, többrétegű vízszgetelés Schlüter -KERDI-BOARD Schlüter -KERDI-BOARD A csempeburkolat készítésének unverzáls alapfelülete Pontosan, ahogy

Részletesebben

Algoritmusok, adatszerkezetek I.

Algoritmusok, adatszerkezetek I. NEUMANN JÁNOS INFORMATIKAI KAR Sergyán Szabolcs Algortmusok, adatszerkezetek I. ÓE-NIK 5014 Budapest, 2015. Készült az Óbuda Egyetem án az ÓE-NIK 5014. sz. jegyzetszerződés kereten belül 2014-ben. Szerző:

Részletesebben

A 2012/2013 tanévi Országos Középiskolai Tanulmányi Verseny második fordulójának megoldása. informatika II. (programozás) kategória

A 2012/2013 tanévi Országos Középiskolai Tanulmányi Verseny második fordulójának megoldása. informatika II. (programozás) kategória Oktatási Hivatal A 2012/2013 tanévi Országos Középiskolai Tanulmányi Verseny második fordulójának megoldása informatika II. (programozás) kategória Kérjük a tisztelt kollégákat, hogy az egységes értékelés

Részletesebben

Statisztikai. Statisztika Sportszervező BSc képzés (levelező tagozat) Témakörök. Statisztikai alapfogalmak. Statisztika fogalma. Statisztika fogalma

Statisztikai. Statisztika Sportszervező BSc képzés (levelező tagozat) Témakörök. Statisztikai alapfogalmak. Statisztika fogalma. Statisztika fogalma Témakörök Statsztka Sortszerező BSc kézés (leelező tagozat) 2-2-es tané félé Oktató: Dr Csáfor Hajnalka főskola docens Vállalkozás-gazdaságtan Tsz E-mal: hcsafor@ektfhu Statsztka fogalmak Statsztka elemzések

Részletesebben

Variancia-analízis (ANOVA) Mekkora a tévedés esélye? A tévedés esélye Miért nem csinálunk kétmintás t-próbákat?

Variancia-analízis (ANOVA) Mekkora a tévedés esélye? A tévedés esélye Miért nem csinálunk kétmintás t-próbákat? Varanca-analízs (NOV Mért nem csnálunk kétmntás t-próbákat? B Van különbség a csoportok között? Nncs, az eltérés csak véletlen! Ez a nullhpotézs. és B nncs különbség Legyen, B és C 3 csoport! B és C nncs

Részletesebben

Algoritmizálás, adatmodellezés tanítása 11. előadás. (Horváth Gyula előadása alapján)

Algoritmizálás, adatmodellezés tanítása 11. előadás. (Horváth Gyula előadása alapján) Algoritmizálás, adatmodellezés tanítása 11. előadás (Horváth Gyula előadása alapján) Rekurzió Klasszikus példák Faktoriális n! Fibonacci-számok Fib n A rekurzió lényege: önhivatkozás n * n 1! ha n 0 1

Részletesebben

Feladatsor 2012/13 2. félév a Programozási alapismeretek tárgyhoz

Feladatsor 2012/13 2. félév a Programozási alapismeretek tárgyhoz Feladatsor 2012/13 2. félév a Programozási alapismeretek tárgyhoz 1. feladat: b) Van-e K másodpercnél hosszabb szám a listán? c) Melyik a leghosszabb dal? d) Melyik előadónak van a legtöbb száma a listán

Részletesebben

A 2012/2013 tanévi Országos Középiskolai Tanulmányi Verseny első forduló feladatainak megoldása. INFORMATIKÁBÓL II. (programozás) kategóriában

A 2012/2013 tanévi Országos Középiskolai Tanulmányi Verseny első forduló feladatainak megoldása. INFORMATIKÁBÓL II. (programozás) kategóriában Oktatási Hivatal A 2012/2013 tanévi Országos Középiskolai Tanulmányi Verseny első forduló feladatainak megoldása INFORMATIKÁBÓL II. (programozás) kategóriában Kérjük a tisztelt tanár kollégákat, hogy a

Részletesebben

Elosztott rendszerek játékelméleti elemzése: tervezés és öszönzés. Toka László

Elosztott rendszerek játékelméleti elemzése: tervezés és öszönzés. Toka László adat Távközlés és Médanformatka Tanszék Budapest Műszak és Gazdaságtudomány Egyetem Eurecom Telecom Pars Elosztott rendszerek játékelmélet elemzése: tervezés és öszönzés Toka László Tézsfüzet Témavezetők:

Részletesebben

14. melléklet a 44/2015. (XI. 2.) MvM rendelethez. Összegezés az ajánlatok elbírálásáról

14. melléklet a 44/2015. (XI. 2.) MvM rendelethez. Összegezés az ajánlatok elbírálásáról 14. melléklet a 44/2015. (XI. 2.) MvM rendelethez Összegez az ajánlatok elbírálásáról I. szakasz: jánlatkérő I.1) Név címek Hvatalos név: Gyula Szakképz Centrum Posta cím: 5700 Gyula, Szent István utca

Részletesebben

Játék a szavakkal. Ismétléses nélküli kombináció: n különböző elem közül választunk ki k darabot úgy, hogy egy elemet csak egyszer

Játék a szavakkal. Ismétléses nélküli kombináció: n különböző elem közül választunk ki k darabot úgy, hogy egy elemet csak egyszer Játék a szavakkal A következőekben néhány szóképzéssel kapcsolatos feladatot szeretnék bemutatni, melyek során látni fogjuk, hogy egy ábrából hányféleképpen olvashatunk ki egy adott szót, vagy néhány betűből

Részletesebben

VALLALKQZÁSf SZERZ Ő DES ESPAN Nyugat-dunántúli Regionális Energia Stratégia és a három kistérség i energetikai koncepció kidolgozása tárgyban "

VALLALKQZÁSf SZERZ Ő DES ESPAN Nyugat-dunántúli Regionális Energia Stratégia és a három kistérség i energetikai koncepció kidolgozása tárgyban VALLALKQZÁSf SZERZ Ő DES ESPAN Nyugat-dunántúl Regonáls Energa Stratéga és a három kstérség energetka koncepcó kdolgozása tárgyban " Amely létrejött egyrészrő l a Nyugat-dunántúl Regonáls Fejlesztés Ügynökség

Részletesebben

Rekurzió. (Horváth Gyula és Szlávi Péter előadásai felhasználásával)

Rekurzió. (Horváth Gyula és Szlávi Péter előadásai felhasználásával) Rekurzió (Horváth Gyula és Szlávi Péter előadásai felhasználásával) Rekurzió Klasszikus példák Faktoriális n! n * n 1! ha n 0 1 ha n 0 Fibonacci-számok Fib n 0 ha n 0 1 ha n 1 Fib n 1 Fib n 2 ha n 1 A

Részletesebben

A 2017/2018 tanévi Országos Középiskolai Tanulmányi Verseny második fordulójának feladatai. INFORMATIKA II. (programozás) kategória

A 2017/2018 tanévi Országos Középiskolai Tanulmányi Verseny második fordulójának feladatai. INFORMATIKA II. (programozás) kategória Oktatási Hivatal A 1/18 tanévi Országos Középiskolai Tanulmányi Verseny második fordulójának feladatai INFORMATIKA II. (programozás) kategória 1. feladat: K-homogén sorozat ( pont) Azt mondjuk, hogy az

Részletesebben

A 2015/2016 tanévi Országos Középiskolai Tanulmányi Verseny első forduló javítási-értékelési útmutató. INFORMATIKA II. (programozás) kategória

A 2015/2016 tanévi Országos Középiskolai Tanulmányi Verseny első forduló javítási-értékelési útmutató. INFORMATIKA II. (programozás) kategória Oktatási Hivatal 2015/2016 tanévi Országos Középiskolai Tanulmányi Verseny első forduló javítási-értékelési útmutató INFORMTIK II. (programozás) kategória Kérjük a tisztelt tanár kollégákat, hogy a dolgozatokat

Részletesebben