Hirdetés

Új hozzászólás Aktív témák

  • jattila48
    aktív tag

    Egy 6x6-os rács esetén 9 db lyuknak kell lennie, amiknek úgy kell elhelyezkedniük, hogy 90 fokokkal elforgatva ne kerüljön egyik lyuk sem fedésbe bármely másikkal. Tehát minden egyes lyuk hozzáadása kizár (saját magával együtt) 4 pozíciót. Az első lyuk 36 helyen lehet, a következők 32, 28, ... stb. helyen, ami összesen 36*32*28*...*4*1. Viszont a lyukasztási sorrend nem számít, ugyanazt a rácsot kapjuk, bármilyen sorrendben lyukasztjuk ki a kiválasztott 9 pozíciót. Tehát az össz kombinációt el kell osztanunk 9!-sal: 36*32*28*...*4*1/9! = 262144.

    Már ha jó a gondolatmenetem... :D

    Bármelyik kivágott lyuk a forgatások miatt 4 pozíciót határoz meg, amelyek közül csak ezt az egyet lehet kivágni. Hogy egy, forgatások által meghatározott négyes melyik elemét választod ki, az 4-féleképpen lehetséges. Összesen 9 db. négyes van, amelyek mindegyikéből csak egy-egy elemet lehet kiválasztani, ezt pedig összesen 4^9 féleképpen lehet megtenni. Szerintem az én megoldásom a jó! :K
    Egyébként ilyen módon a Cardano rácsot a (rejtjelezés kulcsát) egy 9 hosszú sorozattal lehet reprezentálni, amelynek minden eleme pl. 1,2,3, vagy 4 (pl. 1,3,2,1,2,4,3,2,4), és meg lehetne állapodni, hogy a sorozat elemei rendre az (sor,oszlop)=(1,1),(1,2)(1,3)(1,4),(1,5)(2,2),(2,3),(2,4),(3,3) elemek által reprezentált 4-esek valamelyik elemét jelentik. A fenti példából az (1,1),(6,5),(3,6),(1,4),(5,6),(5,2),(5,4),(4,5),(4,3) Cardano rács adódik, méghozzá úgy, hogy a reprezentáló elemeket helyben hagyjuk (a kulcsban ezt 1 jelöli), vagy 90 fokkal jobbra (2 jelöli), 180 fokkal jobbra (3 jelöli), 270 fokkal jobbra (4 jelöli) forgatjuk.
    Lehetne bonyolítani a programot, hogy a kulcsot ilyen tömörebb módon adjuk meg.
    Érdemes lenne elgondolkozni azon, hogy hogy lehet egy elég hosszú szöveget a kulcs ismerete nélkül megfejteni. A maga idejében ez elég reménytelen feladatnak látszott, azonban számítógép segítségével ma már nem az.

Új hozzászólás Aktív témák