Étant donné un tableau d'entiers non négatifs, votre tâche consiste à n'en conserver que certains éléments, comme décrit ci-dessous.
Disons que le tableau est
[1, 3, 2, 4, 11, 5, 2, 0, 13, 10, 1]
.Tout d' abord obtenir le premier élément du tableau,
n
. Conservez les premiersn
éléments et jetez le suivant (jetez len+1
e). Le nouveau tableau est[1, 2, 4, 11, 5, 2, 0, 13, 10, 1]
.Ensuite, vous saisissez l'élément suivant celui supprimé et faites exactement la même chose. Réappliquant le processus, nous obtenons
[1, 2, 11, 5, 2, 0, 13, 10, 1]
Vous répétez le processus jusqu'à ce que vous arriviez en dehors des limites du tableau / il ne reste aucun élément dans le tableau. Nous nous arrêtons car
11
est supérieure à la longueur du tableau.Vous devez maintenant afficher le résultat.
Les entrées / sorties peuvent être prises / fournies sous n'importe quelle forme standard. Le tableau ne sera jamais vide et ne contiendra que des entiers non négatifs. Toutes les failles standard sont interdites.
C'est du code-golf donc le code le plus court en octets gagne!
Cas de test
Entrée -> Sortie [1, 2, 3, 4, 5] -> [1, 3, 4] [6, 1, 0, 5, 6] -> [6, 1, 0, 5, 6] [1, 3, 2, 4, 11, 5, 2, 0, 13, 10, 1] -> [1, 2, 11, 5, 2, 0, 13, 10, 1] [2, 2, 2, 2, 2, 2] -> [2, 2] [1, 2, 3, 1, 2, 3, 1, 2, 3] -> [1, 2] [3, 1, 2, 4, 0] -> [] *
* Le dernier cas de test implique 0
, j'ai donc décidé de publier le processus de manière à ce qu'il soit plus clair:
[3, 1, 2, 4, 0] --> [3, 1, 2, 0] --> [1, 2, 0] --> [1, 0] --> [0] --> [] )
2
supprimé à la première étape au lieu de 3
?
[1, 2, 3, 1, 2, 3, 1, 2, 3]
n
", vous commencez toujours par le début du tableau pour conserver les n
éléments? Ne pas (comme je le pensais à première vue) garder les n
éléments là où le premier élément est celui que n
vous évaluez?