Description du défi
Étant donné une liste / tableau d'éléments, affichez tous les groupes d'éléments répétitifs consécutifs.
Description des entrées / sorties
Votre entrée est une liste / tableau d'éléments (vous pouvez supposer que tous sont du même type). Vous n'avez pas besoin de prendre en charge tous les types de votre langue, mais vous devez en prendre au moins un (de préférence int
, mais des types comme boolean
, bien que pas très intéressants, conviennent également). Exemples de sorties:
[4, 4, 2, 2, 9, 9] -> [[4, 4], [2, 2], [9, 9]]
[1, 1, 1, 2, 2, 3, 3, 3, 4, 4, 4, 4] -> [[1, 1, 1], [2, 2], [3, 3, 3], [4, 4, 4, 4]]
[1, 1, 1, 3, 3, 1, 1, 2, 2, 2, 1, 1, 3] -> [[1, 1, 1], [3, 3], [1, 1], [2, 2, 2], [1, 1], [3]]
[9, 7, 8, 6, 5] -> [[9], [7], [8], [6], [5]]
[5, 5, 5] -> [[5, 5, 5]]
['A', 'B', 'B', 'B', 'C', 'D', 'X', 'Y', 'Y', 'Z'] -> [['A'], ['B', 'B', 'B'], ['C'], ['D'], ['X'], ['Y', 'Y'], ['Z']]
[True, True, True, False, False, True, False, False, True, True, True] -> [[True, True, True], [False, False], [True], [False, False], [True, True, True]]
[0] -> [[0]]
En ce qui concerne les listes vides, la sortie n'est pas définie - il peut s'agir de rien, d'une liste vide ou d'une exception - tout ce qui convient le mieux à vos besoins de golf. Vous n'avez pas non plus à créer une liste de listes distincte, il s'agit donc également d'une sortie parfaitement valide:
[1, 1, 1, 2, 2, 3, 3, 3, 4, 9] ->
1 1 1
2 2
3 3 3
4
9
L'important est de maintenir les groupes séparés d'une manière ou d'une autre.
int
s séparés par, par exemple, 0
s serait une mauvaise idée car il peut y avoir des 0
s dans l'entrée ...
[4, 4, '', 2, 2, '', 9, 9]
ou [4, 4, [], 2, 2, [], 9, 9]
.