Connexe: Valider un tracé tige-feuille
Contribution
Une liste non vide d'entiers positifs. Si nécessaire, ils peuvent être considérés comme des chaînes. Vous ne pouvez pas supposer qu'il est trié.
Production
Un graphique tige-et-feuille des nombres. Dans un ce diagramme à tiges et à feuilles, les numéros sont commandés dans les tiges par des dizaines, puis tous les numéros qui entrent dans cette tige ont leur celles valeur passée dans la tige, puis tous sont triés. Dans ce défi, les nouvelles lignes séparent les tiges et les espaces séparent les tiges des feuilles.
Vous pouvez inclure ou exclure toutes les tiges vides situées entre des tiges non vides.
Cas de test
(les listes peuvent être prises dans la liste par défaut de votre langue, j'ai utilisé JSON pour le ci-dessous)
Y compris les tiges vides:
[1, 2, 3, 3, 3, 3, 3, 10, 15, 15, 18, 1, 100]
0 11233333
1 0558
2
3
4
5
6
7
8
9
10 0
[55, 59, 49, 43, 58, 59, 54, 44, 49, 51, 44, 40, 50, 59, 59, 59]
4 034499
5 0145899999
[10000, 10100]
1000 0
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010 0
Hors tiges vides:
[1, 2, 3, 3, 3, 3, 3, 10, 15, 15, 18, 1, 100]
0 11233333
1 0558
10 0
[55, 59, 49, 43, 58, 59, 54, 44, 49, 51, 44, 40, 50, 59, 59, 59]
4 034499
5 0145899999
[10000, 10100]
1000 0
1010 0
Réponses:
R , 12 octets
Essayez-le en ligne!
Explication:
la source
stem
serait tout simplement suffisant, car il prend un tableau en entrée.stem
:)Gelée , 17 octets
Essayez-le en ligne!
la source
Python 2 ,
787579 octetsEssayez-le en ligne!
la source
Rétine ,
3830 octetsMerci à Neil d'avoir sauvé 2 octets et à Leo d'avoir sauvé 6 autres.
Le nombre d'octets suppose un codage ISO 8859-1.
L'entrée est une liste d'entiers séparés par des sauts de ligne. La sortie omet les préfixes vides.
Essayez-le en ligne!
la source
(?<=(\b.+ ).)¶\1
vous sauve deux octets.JavaScript (ES6), 89 octets
la source
Python 2 ,
1461401331241201181091079086849182817063 octets-6 octets grâce à Rod. -9 octets grâce aux ovs.
Essayez-le en ligne!
D'accord, quelque chose est légèrement bancal. Comme tous les programmeurs Python doivent le savoir, les dict ne sont pas ordonnés, ce qui signifie que l'ordre d'origine des paires clé-valeur n'est pas conservé. Cependant, dans mon code actuel, je ne trie pas du tout le dict résultant. Pourtant, j'ai testé plusieurs fois, en vérifiant l'égalité et l'ordre à chaque fois, et le dict sort toujours bien. Si quelqu'un réfute que cela se passe toujours bien ou sait pourquoi cela fonctionne, j'aimerais savoir.
Entrez sous forme de liste python et sortez sous forme de dict. Exemple:
Contribution:
Production:
la source
r[i/10]=r.get(i/10,'')+`i%10`
pour 82 octetsMathematica, 103 octets
Code extrait de la réponse supprimée de @ user202729
la source
> <> , 84 octets
Essayez-le en ligne ou au terrain de jeux de poissons !
Suppose que les numéros d'entrée sont déjà sur la pile .
Explication: Tout d'abord, nous trions la pile à l'aide d'un tri à bulles , avec ce morceau de code:
Ensuite, nous calculons le quotient entier de la première chose dans la pile en utilisant 10
::a%-a,
, le mettons dans le registre et parcourons la pile en imprimant les derniers chiffres des nombres jusqu'à ce que leurs premiers chiffres ne soient pas les mêmes que le registre, puis incrémenter le registre et continuer. Lorsque nous atteignons la fin de la liste, marquée d'un0
, nous nous arrêtons.la source
PostgreSQL, 53 octets
La liste des entiers doit résider dans une
integer
colonnen
d'une table existantet
. Le résultat est un tableau à deux colonnes: chaque ligne se compose d'une colonne "tige" et d'une colonne "feuilles". La colonne "feuilles" est au format tableau JSON. (Comme indiqué dans les commentaires, il n'est pas nécessaire de respecter exactement le format indiqué sous "Cas de test".)Bien que l'ordre des tiges ne soit pas garanti (pour économiser 10 octets, il
ORDER BY 1
est omis à la fin de la requête), lors de mes tests, les tiges semblaient se retrouver dans le bon ordre.Afficher le résultat sur SQL Fiddle
la source