Hexcellent dragage de mines

13

Hexcells est un jeu basé sur le démineur joué sur des hexagones. (Divulgation complète: je n'ai rien à voir avec Hexcells. En fait, je n'aime pas vraiment le jeu.) La plupart des règles Hexcells peuvent être assez facilement exprimées dans Generalized Minesweeper (Démineur joué sur un graphique arbitraire). Le plus difficile est le {X}et les -X-règles.

La {X}règle nous dit qu'une cellule borde les Xmines et que toutes ces mines se bordent en continu. Par exemple, si nous avions le conseil d'administration:

  ?   ?

?  {3}  ?

  ?   ?

Les 6 possibilités de placement de mines seraient

  *   .       .   .       .   .       .   *       *   *       *   *

*  {3}  .   *  {3}  .   .  {3}  *   .  {3}  *   .  {3}  *   *  {3}  .

  *   .       *   *       *   *       .   *       .   .       .   .

Votre objectif est de mettre en œuvre la règle {3} en démineur généralisé.

Détails

Démineur généralisé est un démineur joué sur un graphique arbitraire. Le graphique a deux types de sommet, un "indicateur" ou une "valeur". Une valeur peut être activée ou désactivée (une mine ou un raté) mais son état est inconnu du joueur. Un indicateur indique au joueur combien de sommets adjacents sont sur (mines) et ne compte pas comme une mine elle-même.

Par exemple, le tableau suivant pour le dragueur de mines généralisé nous dit que les cellules A et B sont soit les deux mines, soit aucune d'entre elles n'est une mine.

Jeu simple

(Dans le diagramme, les indicateurs sont marqués en gris tandis que les valeurs sont en blanc)

Contrairement au dragueur de mines normal où vous cliquez sur des valeurs qui sont désactivées pour révéler des indicateurs, il n'y a pas un tel mécanicien dans le dragueur de mines généralisé. Un joueur détermine simplement pour quels états du graphique peut satisfaire son indicateur.

Votre objectif est de construire une structure dans le dragueur de mines généralisé de sorte qu'il y ait 6 cellules spécifiques qui ne peuvent avoir que des états qui remplissent comme s'ils étaient connectés avec la règle Hexcells {3}. Lorsque vous écrivez votre solution, vous ne devez pas avoir de valeurs spécifiques à l'esprit pour les cellules de valeur. (En réponse à la question de H.PWiz, il est permis que certaines cellules de valeur soient déductibles de l'état, mais vous pouvez toujours améliorer votre score en supprimant ces cellules)

Notation

Vos réponses seront notées par le nombre de sommets dans le graphique final moins 6 (pour les 6 entrées), un score inférieur étant meilleur. Si deux réponses sont égales dans cette métrique, le briseur d'égalité sera le nombre d'arêtes.

Solvabilité

Ce problème est résoluble, j'ai une solution à ce problème et je le posterai une fois que ce défi aura une semaine.

Post Rock Garf Hunter
la source
Il doit donc toujours y avoir 6 arêtes entre les 6 sommets d'entrée?
Bergi
Les arêtes @Bergi entre les cellules de valeur sont redondantes, car elles n'ont aucune signification
H.PWiz
@ H.PWiz Mais la " {3}règle" dit " toutes ces mines se bordent dans un chemin continu " - sans bords il n'y a pas de chemin.
Bergi
@Bergi mais la tâche est de créer un graphique tel que 6 cellules agissent " comme si elles étaient connectées à la règle Hexcells {3}". Ils n'ont pas besoin d'être connectés
H.PWiz
1
@Pavel Démineur généralisé est un langage de programmation en ce qui me concerne. C'est peut-être très ésotérique, mais je ne pense pas que ce soit trop loin du golf d' épreuve .
Post Rock Garf Hunter

Réponses:

15

7 5 sommets, 14 10 arêtes

(Graphique réalisé avec cet outil en ligne et peinture.)

A- Fsont nos six nœuds, et Jest un nœud d'assistance. Les trois- 1nœuds imposent que les nœuds opposés sont différents, tandis que le- 2nœud s'assure que A,C et Ene peut être ni toutes les mines, ni toutes vides.

Edit: -2 sommets grâce à CalculatorFeline et H.PWiz!

Laikoni
la source
1
Vous pouvez supprimer 2 sommets.
CalculatorFeline
Notez que la structure 2-J garantit également que les ACE ne sont pas tous vides.
CalculatorFeline
3

9 sommets, 17 arêtes

Où ? est une cellule de valeur, qui ne fait pas partie de celles qui 6nous intéressent, nous avons besoin du sous-graphique suivant.

    ___________
?  /    ?      \?
 \|    /|\     /
  3¯¯¯¯ 1 ¯¯¯¯2
  |\    |    /|
  | \ /¯|¯¯¯¯ |
  |  X  |     |
 /  / \_|___  \
A__/    B   \__C

Mes compétences en art ASCII sont terribles.

Avec ces 6 sommets mis en place: ABCpeut avoir les états suivants: 111, 110, 011, 000, 100,001

Avec les cellules correspondant à l'hexagone suivant, il suffit alors 3 sont plus des cellules indicatrices A-1-D, B-1-E,C-1-F

  B  C
A      D
  F  E
H.PWiz
la source
Ce serait beaucoup plus petit si vous cochez A,C,Eplutôt A,B,C.
CalculatorFeline
@CalculatorFeline Je ne vois pas pourquoi ...
H.PWiz
Si vous supprimez le dispositif de vérification ABC de votre solution, cela fonctionne presque, sauf qu'il permet également ACEet BDF. Dans ceux-ci, le nombre de mines ACEest soit 0 ou 3, mais dans une solution valide, il est 1 ou 2. Cela vous permet d'avoir un score de 5.
CalculatorFeline
@CalculatorFeline À droite, et ce serait la réponse de Laikoni moins 2. Je vois maintenant. C'est vraiment difficile à transmettre avec le texte
H.PWiz
@CalculatorFeline Puisqu'il ne contient pas l'idée principale de ma soumission, je ne la posterai pas. Je pense que Laikoni le fera
H.PWiz
3

44 sommets, 66 arêtes

Tout d'abord, nous commençons avec un anneau de 6 cellules de valeur toutes connectées à un 3. Ces cellules seront les cellules avec la {3}règle.

  A   B
   \ /
F---3---C
   / \
  E   D

Ensuite, nous attachons 012 capteurs aux paires de cellules de valeur (AB, BC, CD, DE, EF, FA). La structure du capteur 012 est ci-dessous.

O   ?---1---?
 \ /       /
  2---?---1
 / \
A   B

A et B sont les entrées du capteur et O est la sortie. Le ? les cellules sont des cellules de valeur génériques. O sera une mine si exactement l'un de A et B est une mine et vide sinon. Ensuite, nous connectons un nœud 2 à toutes les sorties du capteur. Cela garantit qu'il y a exactement 2 paires avec exactement 1 mine, et il peut être prouvé que les seules configurations qui satisfont à cela sont celles qui satisfont {3}. Chaque capteur prend 7 nœuds, donc 6 capteurs en nécessitent 42. Ajoutez les 3 nœuds connectés à ABCDEF et les 2 nœuds connectés aux sorties et vous obtenez 44.

Cette solution peut également être adaptée pour {1}- {5}en changeant le nœud 3 en une autre valeur.

CalculatorFeline
la source
Quelles sont les sorties pour chaque 012capteur? De plus, je ne compte que 6 nœuds dans votre012
H.PWiz
Il y a les 2 nœuds, les 2 1 nœuds, les 3? nœuds, et C (qui n'est pas l'un des nœuds ABCDEF, juste la sortie du capteur).
CalculatorFeline
2
@CalculatorFeline a obtenu, peut - être renommer Cà O, depuis C est enABCDEF
H.PWiz
Fait amusant: cette solution est plane.
CalculatorFeline