Étant donné une liste avec un nombre, affichez les plages comme ceci:
Entrée: [0, 5, 0]
deviendrait [0, 1, 2, 3, 4, 5, 4, 3, 2, 1, 0]
.
Il s'agit de mapper une plage à travers le tableau, nous devons donc d'abord créer la plage [0, 5]
, qui est [0, 1, 2, 3, 4, 5]
. Après cela, nous utilisons le 5
pour créer la gamme [5, 0]
. Annexé à notre gamme précédente, cela nous donne:
[0, 1, 2, 3, 4, 5, 4, 3, 2, 1, 0]
Observons un cas de test avec deux mêmes chiffres côte à côte:
[3, 5, 5, 3], ranges:
[3, 5] = 3, 4, 5
[5, 5] = 5 (actually [5, 5] due to overlapping)
[5, 3] = 5, 4, 3
Donc, cela nous donnerait [3, 4, 5, 5, 4, 3]
.
Quelques autres cas de test:
[1, 9] > [1, 2, 3, 4, 5, 6, 7, 8, 9]
[10, -10] > [10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0, -1, -2, -3, -4, -5, -6, -7, -8, -9, -10]
[3, 0, 0, -3] > [3, 2, 1, 0, 0, -1, -2, -3]
[1, 3, 5, 7, 5, 3, 1, -1, -3] > [1, 2, 3, 4, 5, 6, 7, 6, 5, 4, 3, 2, 1, 0, -1, -2, -3]
L'entrée aura toujours au moins 2 entiers.
La réponse la plus courte gagne!