Nehmen wir an, wir haben ein n × n- Gitter. Wir können das Gitter dann in zwei Abschnitte unterteilen, indem wir eine Linie durch das Gitter ziehen. Alles auf einer Seite der Linie befindet sich in einem Satz und alles andere in einem anderen.
Auf wie viele Arten können wir das Gitter auf diese Weise teilen?
Nehmen wir zum Beispiel ein 2 × 2- Gitter:
. .
. .
Wir können 2 Partitionen erstellen, die das Gitter wie folgt in zwei Hälften teilen:
× × × o
o o × o
Wir können auch jede der Ecken abtrennen:
× o o × o o o o
o o o o × o o ×
Zuletzt können wir alle Punkte in einer Partition zusammenfassen, indem wir das Gitter vollständig verfehlen:
× ×
× ×
Dies ergibt insgesamt 7 Partitionen. Beachten Sie, dass die folgende Partition nicht gültig ist, da sie nicht mit einer einzelnen geraden Linie erstellt werden kann.
× o
o ×
Hier ist ein 3 × 3- Gitter
. . .
. . .
. . .
Es gibt 4 rein horizontale oder vertikale Trennwände
× × × × × × × o o × × o
× × × o o o × o o × × o
o o o o o o × o o × × o
Es gibt 4 Eckpartitionen
× o o o o × o o o o o o
o o o o o o o o o o o o
o o o o o o o o × × o o
Es gibt 4 größere Eckwände
× × o o × × o o o o o o
× o o o o × o o × × o o
o o o o o o o × × × × o
Es gibt 8 Partitionen von Teilecken
× × o o × × o o × o o o o o o o o o o o o × o o
o o o o o o o o × o o × o o o o o o × o o × o o
o o o o o o o o o o o × o × × × × o × o o o o o
Es gibt 8 Ritter, die Trennwände bewegen
× × o o × × × × × o o o o o × × o o o o o × × ×
× o o o o × o o × o o × o o × × o o × o o × o o
× o o o o × o o o × × × o × × × × o × × × o o o
Und es gibt eine ganze Partition
× × ×
× × ×
× × ×
Das ergibt insgesamt 29 Partitionen.
Aufgabe
Geben Sie bei einer gegebenen Zahl n als Eingabe die Anzahl der Partitionen aus, die auf diese Weise aus einem n × n- Gitter hergestellt werden können.
Dies ist eine Code-Golf- Frage, daher werden die Antworten in Bytes bewertet, wobei weniger Bytes besser sind.
Testfälle
Hier sind die ersten 34 mit freundlicher Genehmigung der OEIS:
1, 7, 29, 87, 201, 419, 749, 1283, 2041, 3107, 4493, 6395, 8745, 11823, 15557, 20075, 25457, 32087, 39725, 48935, 59457, 71555, 85253, 101251, 119041, 139351, 161933, 187255, 215137, 246691, 280917, 319347, 361329, 407303
quelle
Antworten:
JavaScript (ES6),
113111 Byte2 Gäste dank gast44851 gespeichert
0-indiziert.
Basierend auf der auf OEIS genannten Formel:
Demo
Code-Snippet anzeigen
quelle
a==1&&
mita<2&&
.&&x+x+1
mit|x+x+1
.Python 2 , 116 Bytes
Probieren Sie es online aus!
quelle
R=range
? Würde das einige Bytes sparen?Gelee , 14 Bytes
Probieren Sie es online aus!
Erläuterung
quelle
Mathematica, 59 Bytes
Mit freundlicher Genehmigung des OEIS (genau wie die Frage)
-1 Byte von @ovs
Probieren Sie es online aus!
quelle
==1
mit<2
TIO .Python 2, 90 Bytes
quelle