[PYTHON] Programmierproblem "4 Queen Square"

5 7 11 13
101 103 107 109
191 193 197 199
821 823 827 829

Die obige 4 × 4-Quadratmatrix unterscheidet sich voneinander und der Gesamtwert aller vier Zellen beträgt 1134. Beispiel: 5+103+197+829=1134 101+7+827+199=1134

In dieser Frage wird eine quaternäre Quadratmatrix, in der die Berechnung "Die Gesamtwerte aller vier Zellen mit unterschiedlichen Matrizen sind der gleiche Wert" genannt, "4 Königinquadrate" genannt.

  1. Erstellen Sie eine Methode isFourQueensSquare (int v1, int v2 ... v16): Boolescher Wert, der 16 Zahlen als Argumente verwendet und feststellt, ob es sich um ein Quadrat mit 4 Königinnen handelt. Die Methode gibt true zurück, wenn es sich um ein 4-Queen-Quadrat handelt, und false, wenn es sich nicht um ein 4-Queen-Quadrat handelt.
  2. Erstellen Sie eine Methode isFourQueensSquare (int v [] []): Boolescher Wert, der ein 4 * 4-Array als Argument verwendet und bestimmt, ob es sich um ein 4-Queen-Quadrat handelt.
  3. Erstellen Sie eine Methode createFourQueensSquare (int min): int [] [], die ein Quadrat mit 4 Königinnen erstellt, das aus 16 verschiedenen Primzahlen besteht. Hier ist min ein Wert, der den Mindestwert der Primzahlen angibt, aus denen das 4-Queen-Quadrat besteht. (min <= minimale Primzahl)

Bonus. 4. Gibt es eine unendliche Anzahl von 4 Königinquadraten, die aus 16 verschiedenen Primzahlen bestehen? Beweise es.

Ursprünglich schien es ein Mathe-Quiz für Kinder zu sein, aber ich habe es gewagt, es zu einem Programmierproblem für das Newcomer-Training zu machen. Für mein persönliches Interesse kam ich auf die Idee, dass "alle 16 Zahlen unterschiedliche Primzahlen sind". Es bestand aus vierfachen Primzahlen. Es könnte interessant sein, sich ein Prime 4 Queen-Quadrat vorzustellen, bei dem der Gesamtwert von 16 Quadraten kleiner ist.

Recommended Posts

Programmierproblem "4 Queen Square"
Sammlung von Programmierproblemen (Q31-Q35)
Programmierproblemsammlung (Q11 bis Q15)
[Mathematisches Optimierungsproblem] Lineare Programmiermethode mit PuLP