Kezdőoldal » Számítástechnika » Programozás » Ezt milyen algoritmussal...

Ezt milyen algoritmussal oldanátok meg?

Figyelt kérdés
Helyezzen el négy vezért (királynőt) és négy huszárt, hogy a figurák ne üthessék egymást!

2018. jún. 23. 10:01
 1/10 anonim ***** válasza:
71%
Backtrackinggel.
2018. jún. 23. 10:03
Hasznos számodra ez a válasz?
 2/10 anonim ***** válasza:

Fogalmam sincs, mi a neve az algoritmusnak, de ha az előttem szóló kolléga szerint backtracking, akkor legyen úgy.


Ennyi a feladat? Mert így kevés az értelme. Milyen színűek ugyanis a figurák? Ha mind világos vagy sötét, akkor semmilyen helyzetben nem üthetik egymást. Ha fele-fele, akkor némelyik üthet, némelyik nem. Vagy mindegyik üthet mindenkit, függetlenül a színüktől? De tételezzük fel az utóbbit.


Az a baj, hogy ha nekiállnék legenerálni az összes variációt, az olyan elképesztő adattömeg lenne, amivel kár is vesződni. Ez tehát nem járható. De hatalmasat optimalizálunk rajta, ha azt csináljuk, hogy először egy királynőt teszünk le az A1-be, majd utána a következőt olyan helyzetbe, ahol sem vízszintesen, sem függőlegesen nincs vele egy vonalban. A következőt ehhez képest már csak azokra a helyekre tehetjük, ahol szintén egyikkel sincs vonalban, és a negyediket is. Ezzel nagyon lecsökken a variációk száma, szerintem kezelhetővé is válik.


Ezután a meglévő királynő-konfigurációkba elkezdjük belepróbálgatni a négy huszárt. Keresünk olyan konfigurációkat, ahol a királynők vonalai között megmaradt négy olyan vakfolt, amely L alakú.


Ez szerintem elfogadható sebességgel lefutna még JavaScriptben is.

2018. jún. 23. 10:47
Hasznos számodra ez a válasz?
 3/10 A kérdező kommentje:

Figurák színe nem számít, csak a logikát kell nézni. Úgy kell elhelyezni gondolom egy 8x8 as mátrixba az elemeket, hogy ne üssék egymást. Királynő oldalazva és átlóba léphet, huszár átlóba. Ezekben a sorokban, oszlopokban pedig le kell foglalni a területet, hogy oda később ne tegye le a program a királynőt vagy huszárt. Mindig a következő szabad helyre kell letennie a bábukat. És a végén kiírni, hogy hol vannak a bábuk.

Igen ez azt jelenti, hogy a program mindig ugyan azt fogja kiírni.

2018. jún. 23. 10:59
 4/10 anonim ***** válasza:

Jajj...

A huszár egyébként L alakban léphet.

2018. jún. 23. 11:02
Hasznos számodra ez a válasz?
 5/10 anonim ***** válasza:
73%

Klasszikus, n-királynő probléma:

[link]

2018. jún. 23. 11:54
Hasznos számodra ez a válasz?
 6/10 A kérdező kommentje:
Jaj bocs... igen L alak :)
2018. jún. 23. 12:01
 7/10 A kérdező kommentje:
5-ös köszi ez jó!
2018. jún. 23. 12:04
 8/10 anonim ***** válasza:
Ezekben a feladványokban az a jó, hogy többnyire semmi gyakorlati hasznuk nincs.
2018. jún. 24. 02:04
Hasznos számodra ez a válasz?
 9/10 anonim ***** válasza:
100%
Hacsak az nem, hogy a hallgató begyakorolhatja rajta a visszalépéses keresés algoritmusát. Általában ez a feladatok haszna és célja, hogy valamit begyakoroltassanak.
2018. jún. 24. 06:53
Hasznos számodra ez a válasz?
 10/10 anonim ***** válasza:
Vagy még guglival: queens and knights problem
2018. jún. 26. 23:03
Hasznos számodra ez a válasz?

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!