n
Konstruieren Sie bei einer positiven Eingangszahl eine Zahlenspirale von 1
bis n^2
, wobei sich 1
oben links im Uhrzeigersinn eine Spirale nach innen dreht. Nehmen Sie die Summe der Diagonalen (wenn n
ungerade, wird die mittlere Zahl n^2
zweimal gezählt) und geben Sie diese Zahl aus.
Beispiel für n = 1
:
1
(1) + (1) = 2
Beispiel für n = 2
:
1 2
4 3
(1+3) + (4+2) = 4 + 6 = 10
Beispiel für n = 4
:
1 2 3 4
12 13 14 5
11 16 15 6
10 9 8 7
(1+13+15+7) + (10+16+14+4) = 36 + 44 = 80
Beispiel für n = 5
:
1 2 3 4 5
16 17 18 19 6
15 24 25 20 7
14 23 22 21 8
13 12 11 10 9
(1+17+25+21+9) + (13+23+25+19+5) = 73 + 85 = 158
Weitere Regeln und Klarstellungen
- Dies ist OEIS A059924, und auf dieser Seite finden Sie einige geschlossene Lösungen.
- Es kann davon ausgegangen werden, dass die Eingabe und Ausgabe in den nativen Integer-Typ Ihrer Sprache passt.
- Die Eingabe und Ausgabe kann in jedem geeigneten Format erfolgen .
- Sie können für Ihre Einreichung entweder 0-Index oder 1-Index wählen, wie ich hier in meinen Beispielen bin. Bitte geben Sie an, was Sie tun.
- Entweder ein vollständiges Programm oder eine Funktion sind akzeptabel. Wenn es sich um eine Funktion handelt, können Sie die Ausgabe zurückgeben, anstatt sie zu drucken.
- Wenn möglich, fügen Sie bitte einen Link zu einer Online-Testumgebung hinzu, damit andere Personen Ihren Code ausprobieren können!
- Standardlücken sind verboten.
- Dies ist Code-Golf, daher gelten alle üblichen Golfregeln, und der kürzeste Code (in Bytes) gewinnt.
+3-3*(-1)^n
ist nicht wirklich dasselbe wie6
, obwohl der Unterschied in der Ganzzahldivision verloren geht.