www.migniot.com

Naminos 3D

La détermination des Naminos 3D de longueur N suit le même schéma que la détermination en 2D. La phase d'élimination des doublons demande un peu plus de mathématique, notamment le calcul de toutes les compositions de matrices de rotation de 90 degrés élémentaires.
Pour déterminer les pièces de longueur N, on part du cube simple, la pièce de longueur 1. Pour calculer toutes les pièces de longueur 2 on ajoute un cube à la pièce de longueur 1 à coté d'un cube existant.
En généralisant, le calcul de la génération N+1, suivante de la génération N s'effectue en ajoutant un cube partout où c'est possible i.e. à chaque emplacement vide situé à coté d'une case remplie, à partir d'une pièce existante.

Résultats

Pour éliminer les doublons :
  • Lister toutes les pièces de longueur N
  • Pour chaque pièce trouvée
    • Calculer toutes ses rotations 3D, au pire 64
    • Conserver uniquement la 1ère des rotations
    • Eliminer les autres rotations de la liste des pièces trouvées
  • Afficher les pièces restantes
Les résultats pour N=5

Code source

Le source pour python 3.1 : Naminos3D.zip