Scrivi un programma o una funzione che accetta un numero intero positivo N e genera i primi N numeri di questo schema a zigzag amplificante, usando solo le linee necessarie:
26
25 27 .
10 24 28 .
9 11 23 29 .
2 8 12 22 30 44
1 3 7 13 21 31 43
4 6 14 20 32 42
5 15 19 33 41
16 18 34 40
17 35 39
36 38
37
Quindi, se N è 1l'output è
1
Se N è 2, l'uscita è
2
1
Se N è 3l'output è
2
1 3
Se N è 4l'output è
2
1 3
4
Se N è 10l'output è
10
9
2 8
1 3 7
4 6
5
Se N è 19l'output è
10
9 11
2 8 12
1 3 7 13
4 6 14
5 15 19
16 18
17
e così via.
Gli appunti
Ogni picco o trogolo dello zigzag raggiunge il suo punto di una linea in più rispetto alla linea con
1su di esso rispetto al picco o trogolo precedente.N non è limitato a
44. Lo zigzag cresce nello stesso modello e dovrebbe essere supportato N più grande.I numeri con più cifre devono solo "toccare" ai loro angoli, come illustrato. Assicurati che funzioni quando N è
100e sopra.Non dovrebbero esserci righe vuote (o solo spazio) nell'output tranne una newline finale opzionale.
Ogni riga può avere qualsiasi quantità di spazi finali.
punteggio
Vince il codice più breve in byte. Tiebreaker è la risposta precedente.