Sona est dans sa maison avec sa fille de 10 ans. Elle doit aller à l'école pour ramener un autre enfant de l'école, car l'école est finie à 14 heures. Il fait chaud dehors, alors elle veut laisser son plus jeune enfant à la maison.
Elle a donné un tas de cordes à son enfant pour l'occuper pendant son absence. Elle lui a demandé d'inverser les mots de la chaîne. Il y a beaucoup de chaînes, vous devez donc aider sa fille à résoudre cette énorme tâche.
Donc, étant donné une chaîne qui contient des mots séparés par un seul espace, inversez les mots de la chaîne. Vous pouvez supposer qu'il n'y a aucun espace de début ou de fin.
La chaîne contiendra uniquement [a-zA-z ]
, vous n'avez donc pas besoin de gérer la ponctuation.
Vous recevrez une chaîne en entrée et vous devrez sortir une chaîne.
Exemples de cas de test:
Input:
Man bites dog
Output:
dog bites Man
Input:
The quick brown fox jumps over the lazy dog
Output:
dog lazy the over jumps fox brown quick The
Input:
Hello world
Output:
world Hello
Notation
C'est du code-golf . La réponse la plus courte en octets gagne.
la source
['man', 'bites', 'dog']
)Réponses:
Rétine , 7 octets
Essayez-le en ligne!
Faites correspondre tous les mots (
\w+
) triez-les avec la chaîne de clé vide (O$
), ce qui signifie qu'ils ne seront pas triés du tout, puis inversez leur ordre (^
).la source
0$
? Tu ne peux pas simplement inverser la situation?O
) est actuellement le seul mode qui a cette option inverse.Haskell, 21 octets
Essayez-le en ligne!
la source
Python 3 , 29 octets
Essayez-le en ligne!
la source
*
il?JavaScript (ES6), 31 octets
Essayez-le
la source
Split
par défaut sur les espaces blancs par défaut, pouvez-vous faire la même chose ici?split
dans JS, il se divisera sur chaque caractère individuel ou créera un tableau avec un seul élément contenant la chaîne d'origine, selon la syntaxe utilisée.Bash + utilitaires Linux courants, 21
Laisse un espace de fin dans la chaîne de sortie - je ne sais pas si c'est OK ou non.
la source
R, 19 octets
lit la chaîne depuis stdin. Par défaut,
scan
lit les jetons séparés par des espaces / retours à la ligne, il lit donc les mots comme vecteur.rev
inverse etcat
imprime les éléments avec des espaces.Essayez-le en ligne!
la source
Brachylog , 6 octets
Essayez-le en ligne!
Explication
Notez que "diviser sur les espaces" et "joindre avec des espaces" utilisent le même intégré, c'est-à-dire qu'ils sont
ṇ₁
juste utilisés dans des "directions" différentes.la source
Gelée , 3 octets
Essayez-le en ligne!
Explication:
la source
C #, 58 octets
la source
brainfuck , 74 octets
Essayez-le en ligne!
Ce code crée le nombre -32 à deux endroits différents, mais cela semble être moins d'octets que d'essayer de maintenir un seul -32.
Explication
la source
C,
5448 octetsUtilisation d'arguments en entrée, 48 octets
Essayez en ligne
Utilisation de pointeurs, 84 octets
Utilisation
la source
Japt ,
111074 octetsMa première tentative à Japt.
Essayez-le en ligne
Explication
Veuillez partager vos conseils Japt ici .
la source
¸
à la place deqS
, ce qui devrait vous faire économiser trois octets ici. (Voir la section "Raccourcis Unicode" de la documentation de l'interprète)-S
indicateur .-S
serait de même de +1 sur votre nombre total d'octets.Python 2 , 34 octets
Essayez-le en ligne!
la source
Pyth , 4 octets
Essayez-le en ligne!
la source
05AB1E , 4 octets
Remarque: ne fonctionnera que pour 2 mots ou plus. +1 octet si ce n'est pas OK.
Essayez-le en ligne!
la source
#R¸»
solution alternative sur 4 octets: P.PHP, 47 octets
Essayez-le en ligne!
la source
GNU Make , 62 octets
la source
Cubix , 48 octets
Presque abandonné celui-ci, mais finalement arrivé.
Essayez-le en ligne!
Cela correspond à un cube avec une longueur de côté de trois comme suit
Les étapes générales sont les suivantes:
A
et inversezB
pileq
vers le bas, ajoutez un compteur0
à la pile. un peu de sauter ici.)
et récupérer l'élément de compteur dans la pilet
S-?
(
!U
est à 0s
compteur avec le personnage sur la pileo
personnage et le sortir de la pile;
#
et décrémentez(
?
si 0 et quittez@
si c'est 0So
nettoyage d' espace;;
et revenez à la première boucle.J'ai sauté un certain nombre d'étapes superflues, mais vous pouvez le voir étape par étape
la source
Mathematica, 35 octets
Essayez-le en ligne!
la source
StringSplit[#]
se divise automatiquement sur les espaces, vous n'avez donc pas besoin de spécifier le" "
.StringRiffle@*Reverse@*StringSplit
(appelez-le commeStringRiffle@*Reverse@*StringSplit@"hello world"
)Röda ,
2725 octets2 octets économisés grâce à @fergusq
Essayez-le en ligne!
Cette fonction prend l'entrée du flux d'entrée.
Explication (obsolète)
la source
split
utilise l'espace comme séparateur par défaut, ilsplit()
est donc plus court que(_/" ")()
.Ohm , 4 octets
Essayez-le en ligne!
Explication
la source
CJam , 7 octets
Essayez-le en ligne!
Explication
la source
k, 9 octets
Essayez-le dans votre navigateur de la variété web!
la source
J , 6 octets
Essayez-le en ligne! C'est inversé (
|.
) sous (&.
) mots (;:
). Autrement dit, divisez la phrase en mots, inversez-la et joignez à nouveau la phrase.la source
Gema, 29 caractères
Exemple d'exécution:
la source
Java 8, 62 octets
Essayez-le ici.
Java 7, 77 octets
Essayez-le ici.
la source
Perl 6 , 14 octets
Essayez-le
Étendu:
la source
Java 8, 53
57octetsAPI Lambda + Stream
Suite à la suggestion de Selim, nous venons de laisser tomber 4 octets
la source
Stream.of
au lieu deArrays.stream
: -)Vim, 20 octets
C'est plus court que l'autre réponse vim.
Essayez-le en ligne!
la source
Pyth, 3 octets
Ma première réponse Pyth, un octet plus court que la réponse de @ notjagan!
Expliqué:
la source