Vous devez remplir un tableau avec chaque numéro 0-n
inclus. Aucun chiffre ne doit se répéter. Cependant, ils doivent être dans un ordre aléatoire.
Règles
Toutes les règles de code-golf standard et les échappatoires standard sont interdites
Le tableau doit être généré de manière pseudo-aléatoire. Chaque permutation possible devrait avoir une probabilité égale.
Contribution
n
en aucune façon autorisé dans le poste d'E / S sur meta.
Production
Le tableau de nombres brouillé d' 0-n
inclus.
Réponses:
Perl 6 , 14 octets
Essayez-le
Étendu:
la source
05AB1E , 3 octets
Essayez-le en ligne!
la source
Pyth, 3 octets
Manifestation
.S
est aléatoire. Il convertit implicitement un entier d'entréen
dans la plage[0, 1, ..., n-1]
.h
est+1
, et l'entrée est prise implicitement.la source
R , 16 octets
lit à partir de
stdin
.sample
échantillonne au hasard à partir du vecteur d'entrée, renvoyant une séquence (pseudo) aléatoire.Essayez-le en ligne!
la source
Gelée , 3 octets
Essayez-le en ligne!
Explication:
Solution alternative, 3 octets
Explication:
Essayez-le en ligne!
la source
Python 2 , 51 octets
Essayez-le en ligne!
Il y en a
random.shuffle()
mais ça modifie l'argument en place au lieu de le renvoyer ...la source
random.shuffle
lambda n:shuffle(range(n+1))
n'écrirait la sortie nulle part.PHP, 42 octets
Essayez-le en ligne!
la source
Bash,
1811 octetsEssayez-le en ligne!
la source
Mathematica, 24 octets
la source
MATL , 4 octets
Essayez-le en ligne!
Explication
la source
Brachylog , 2 octets
Essayez-le en ligne!
Explication
la source
Japt , 4 octets
Essayez-le en ligne
la source
öx
serait suffisant jusqu'à ce que je remarque la partie "inclusive". (Vous pouvez remplacer lex
par presque tout le reste, btw)C #, 76 octets
Cela renvoie un IOrderedEnumerable, j'espère que ça va, ou bien j'ai besoin de quelques octets de plus pour un .ToArray ()
la source
CJam ,
76 octets1 octet supprimé grâce à Erik l'Outgolfer .
Il s'agit d'un bloc (fonction) anonyme qui prend un entier de la pile et le remplace par le résultat. Essayez-le en ligne!
Explication
la source
{),mr}
octet n'est-il pas plus court?Java 8,
11411197 octets-3 octets et correction de bugs grâce à @ OlivierGrégoire .
-4 octets grâce à @Jakob .
-10 octets en supprimant
.toArray()
.Explication:
Essayez-le ici.
la source
n
. Fix et golf:for(n++;--n>=0;l.add(n));
. De plus, je dis que vous n'avez pas besoin de retourner un tableau. Le tableau et la liste sont les mêmes dans la plupart des langues, il suffit donc de renvoyer la liste.>
devrait l'être>=
.Stack
au lieu de aVector
et changez votre boucle enfor(;n>=0;l.add(n--));
. Et retourner unjava.util.List
est vraiment bien.Ohm , 2 octets
Essayez-le en ligne!
la source
Pyth, 4 octets
Essayez-le ici!
la source
.S
avec un argument entier est identique à.SU
, et[0..n]
peut être codé commeUh
, vous pouvez donc l'utiliser.SUh
, qui devient alors.Sh
.C, 75 octets
Fonction récursive qui s'initialise à la fin du tableau lors de l'entrée et échange avec un élément aléatoire avant la sortie.
la source
n > 98
?a
en para pour mieux correspondre à la règle?Fusain , 33 octets
Essayez-le en ligne! Le lien est vers la version détaillée du code.
Apparemment, il faut 17 octets pour supprimer un élément d'une liste dans Charcoal.
Modifier: De nos jours, cela ne prend que trois octets, en supposant que vous souhaitez supprimer toutes les occurrences de l'élément de la liste. Cela, ainsi que d'autres modifications au charbon de bois, réduisent la réponse à 21 octets: essayez-le en ligne!
la source
APL (Dyalog) , 5 octets
Essayez-le en ligne!
Suppose
⎕IO←0
, qui est par défaut sur de nombreuses machines.Explication
⊢
le bon argument1+
ajoutez-y 1?⍨
générer des nombres 0 ..1+⊢
-1 et les distribuer au hasard dans un tableau de sorte qu'il n'y ait pas deux nombres répétésla source
q / kdb +, 11 octets
Solution:
Exemple:
Explication:
Utilisez l'
?
opérateur avec une entrée négative pour donner la liste complète des0->n
sans doublons:la source
TI-83 BASIC, 5 octets (ennuyeux)
Oui, un intégré.
randIntNoRep(
est un jeton de deux octets etAns
un octet.Plus amusant, 34 octets:
Directement de tibasicdev . Probablement golfable, mais je n'ai encore rien trouvé.
Ce que cela fait: Trie un tableau aléatoire, en déplaçant les éléments du deuxième argument (
L₁
ici) de la même manière que leurs éléments correspondants.la source
JavaScript (ES6), 51 octets
la source
f(5)
10 fois et5
a été l'un des deux derniers articles à chaque fois.1,5,4,0,2,3
&1,0,2,5,3,4
. EDIT: Et quelques autres prnt.sc/fe0goef(5)
lancer un test rapide qui s'exécute 1e5 fois et trouve la position moyenne de chaque nombre dans les résultats. Le tableau résultant était[ 1.42791, 1.43701, 2.00557, 2.6979, 3.3993, 4.03231 ]
, donc je ne pense pas qu'il soit uniforme. ( code )n=>(a=[...Array(n).keys(),n++]).reduce((a,v,i)=>([a[i],a[j]]=[a[j=n*Math.random()|0],v],a),a)
?random()
n'est pas uniforme. Voir (par exemple) en.wikipedia.org/wiki/BrowserChoice.eu#CriticismAceto ,
151416 octetsPoussez zéro sur la pile, lisez un entier, construisez une plage et mélangez-la:
Définissez un repère, testez la longueur pour 0 et (dans ce cas) quittez:
Sinon, imprimez la valeur, une nouvelle ligne et revenez au test de longueur:
(J'ai dû changer le code parce que j'ai réalisé que j'avais mal lu la question et que j'avais construit une plage de 1-n, pas de 0-n.)
la source
Go, 92 bytes
Perdant principalement à la nécessité de semer le PRNG.
Essayez-le en ligne!
la source
Rubis, 20 octets
->n{[*0..n].shuffle}
la source
8th,
423634 bytesCode
SED (Stack Effect Diagram) is
n -- a
Usage and example
la source
Javascript (ES6), 68 bytes
Creates an array of form
Then sorts it and returns the last elements in the new order
la source
J, 11 Bytes
Explanation:
Examples:
la source
Tcl, 90 bytes
Try it online!
Tcl, 96 bytes
Try it online!
la source