Das Pascalsche Dreieck wird erzeugt, indem 1jede Zeile aus aufeinanderfolgenden Additionen gebildet wird. Stattdessen bilden wir hier ein Dreieck, indem wir Multiplikation und Addition abwechseln.
Wir beginnen die Reihe 1mit nur einem Einzelgänger 1. Danach werden die ungeraden Zeilen addiert und die geraden Zeilen multipliziert (1-indiziert). Wenn Sie den Additionsschritt ausführen, nehmen Sie an, dass die Räume außerhalb des Dreiecks mit 0s gefüllt sind . Wenn Sie den Multiplikationsschritt ausführen, nehmen Sie an, dass die Außenseite mit 1s gefüllt ist .
Hier ist das volle Dreieck bis auf 7 Zeilen. Das *oder +auf der linken Seite zeigt, welcher Schritt ausgeführt wurde, um diese Zeile zu generieren.
1 1
2 * 1 1
3 + 1 2 1
4 * 1 2 2 1
5 + 1 3 4 3 1
6 * 1 3 12 12 3 1
7 + 1 4 15 24 15 4 1
Herausforderung
Bei gegebener Eingabe nwird die ndritte Zeile dieses Dreiecks ausgegeben .
Regeln
- Sie können stattdessen 0-index wählen, aber beachten Sie, dass die Additions- und Multiplikationszeilen flip-flop sein müssen, damit genau dasselbe Dreieck wie oben generiert wird. Bitte geben Sie bei Ihrer Einreichung an, ob Sie dies tun möchten.
- Es kann davon ausgegangen werden, dass die Eingabe und Ausgabe in den systemeigenen Ganzzahltyp Ihrer Sprache passen.
- Die Ein- und Ausgabe kann in jedem beliebigen Format erfolgen .
- Es ist entweder ein vollständiges Programm oder eine Funktion zulässig. Bei einer Funktion können Sie die Ausgabe zurückgeben, anstatt sie zu drucken.
- Fügen Sie nach Möglichkeit einen Link zu einer Online-Testumgebung hinzu, damit andere Benutzer Ihren Code ausprobieren können!
- Standardlücken sind verboten.
- Dies ist Codegolf, daher gelten alle üblichen Golfregeln, und der kürzeste Code (in Byte) gewinnt.
Beispiele
Es werden zwei mögliche Beispiele für die Ausgabe von vielen angezeigt: eine Liste oder eine durch Leerzeichen getrennte Zeichenfolge.
4
[1, 2, 2, 1]
8
"1 4 60 360 360 60 4 1"
ndritte Reihe.