Előadást letölteni
Az előadás letöltése folymat van. Kérjük, várjon
1
43. Gombaszedés Kováts László
2
Adatszerkezet 3 féle gomba 3 lista Lilapereszke Rókagomba Csiperke
3
Algoritmus Fájlból beolvasás Feltételek alapján gombaszedés
Fájlba (és monitorra) eredmény írás
4
Fájlból beolvasás N darab adatot, ami az első sorban adott
Első betű alapján (C,L,R) a megfelelő listába helyezzük a súlyokat (Csiperke, Lilapereszke, Rókagomba)
5
Feltételek alapján gombaszedés I.
Csökkenő sorba rendezzük a listákat súly szerint
6
Feltételek alapján gombaszedés II.
Ha van Csiperke akkor Lilapereszkét nem vizsgálunk, tehát csak Rókagomba és Csiperke vizsgálata Ha van Rókagomba, akkor a nagyobbat tesszük a zsákba ha belefér… ha nem akkor kidobjuk a listából zsákba tétel nélkül(egyezés esetén a csiperkét választjuk) Ha nincs Rókagomba, akkor a Csiperke kerül a zsákba, ha belefér, egyébként kidobjuk a listából(csiperke.pop_front())
7
Feltételek alapján gombaszedés III.
Ha már nincs Csiperke(csiperke.size()=0), akkor a Lilapereszke és Rókagomba kapcsolatát vizsgáljuk(persze mindezt csak akkor ha van Lilapereszke, ha nincs akkor a Rókagombát nézzük csak), és amelyik nagyobb az kerül a zsákba, ha belefér, ha nem kihagyjuk, azaz kikerül a listából(egyező súly esetén a Rókagomba kerül a zsákba, ha belefér) Ha nincs Rókagomba, akkor már csak a Lilapereszkéket nézzük
8
Feltételek alapján gombaszedés IV.
Algoritmust ciklusban futtatjuk Addig míg a jelenlegi tömeg+a listák végén lévő súly(tehát minden gombából a legkisebb súlyú) kisebb, vagy egyenlő, mint a zsák kapacitása. Ha már ez a feltétel nem teljesül, nincs szükség további vizsgálatra, az algoritmus megáll.
9
Végül Eredmény fájlba(gomba.ki) és monitorra írása formázottan.
10
The end
Hasonló előadás
© 2024 SlidePlayer.hu Inc.
All rights reserved.