En tant que spin-off de mon défi chez Puzzling , votre objectif est de produire 2016
.
Règles:
- Vous devez inclure les numéros
10 9 8 7 6 5 4 3 2 1
dans cet ordre. Ils peuvent être utilisés comme des entiers individuels ou concaténés ensemble (comme1098
), mais10
ils ne peuvent pas être séparés1
et0
- aucun caractère ne peut être présent entre les chiffres. Notez que, dans certaines langues,10
peut ne pas représenter réellement le littéral entier10
, ce qui est acceptable. - Votre code ne doit pas contenir d'autres nombres ou variables numériques ou constantes
T
prédéfinies (donc en Pyth n'est pas autorisé, car il s'agit d'une constante numérique). - Vous devez calculer en
2016
utilisant des chiffres. La simple sortie2016
sans effectuer aucune opération sur les nombres requis (par exemple, en décodant une chaîne codée composée uniquement de caractères alphabétiques) n'est pas autorisée. La sortie2016
en morceaux (comme20
, alors16
) n'est pas non plus autorisée; vous devez avoir une seule sortie composée de la valeur numérique2016
. - La réponse valide avec le moins d'octets gagne.
20
et16
et de les imprimer un après l'autre ou que la nécessité de nombre calculé pour être 2016 avant l' impression? 2) Les fonctions sont-elles autorisées? 3) La concaténation des chiffres est-elle autorisée? par exemple1098
(je suppose que oui dans les commentaires précédents, mais juste pour confirmer) 4) Est-ce que "calculer 2016 en utilisant des entiers" signifie que nous ne pouvons jamais avoir de flottants nulle part dans une étape intermédiaire? par exemple, puis-je racine carrée un nombre et arrondir vers le bas?T987654321
?10
doit être inclus afin que vous ayez besoin de gérer cela d'une manière ou d'une autre. 6 Tant qu'il10
apparaît avantT
.Réponses:
Gelée ,
171514 octetsEssayez-le en ligne!
Comment ça fonctionne
la source
Hexagonie, 61 octets
Je ne vais pas gagner, mais je voulais juste relever un défi dans Hexagony.
Cela utilise une méthode différente de celle des autres réponses (bien pire). Il prend quelques facteurs de 2016 (2,3,6,7,8) et les multiplie tous ensemble.
Minifié:
Non minifié:
Explication à venir;
la source
Pyth, 16 octets
Effectue une division entière, puis ajoute (3-21).
Essayez-le ici .
la source
TI-BASIC,
1715 octetsCela utilise la méthode de @ nicael.
17 octets:
Cette solution de Puzzling peut être directement traduite en TI-BASIC.
la source
Japt,
1716 octetsJe déteste ça 17. Je trouverai probablement une autre solution.YAYZ.Explication:
321q
est une racine carrée de 321.~~
étages le nombre.Essayez-le en ligne!
la source
Â
==~~
:-)109876/54-321¬f
est 15 :-D109876/54-321q)f
fonctionne maintenant. L'autre suggestion ne le fait pas.Matlab / Octave, 23 octets
Essayez-le en ligne
la source
avant JC, 14
Rien d'excitant ici - emprunte à d'autres réponses.
la source
109876 54/3+21-p
obtient un score de 16, mais ne garantit pas sa propre réponse.Haskell, 31 octets
Pas le plus court,
10+9*8-7+654*3-21
comme on le voit dans d'autres réponses, fonctionne également dans Haskell, mais quelque chose de différent.Cela crée une liste commençant par
10
et9*8*7+6 = 510
, donc le décalage est500
pour les éléments suivants. La liste entière est[10,510,1010,1510,2010,2510 ...]
. Nous choisissons l'4th
élément (basé sur l'indice 0), c'est2010
-à- dire et ajoutons3*2*1 = 6
. Voilà.J'utilise
const 6 5 = 6
pour me débarrasser de ce5
qui n'est pas nécessaire.la source
Python 2, 20 octets
Encore une fois, ce même ennuyeux
2016.(740)
. Utilise le fait que si vous n'avez pas de nombre décimal dans votre expression, il retourne un entier.la source
> <> (poisson), 18 octets
explication:
multiplie 9 8 et 7 ensemble pour obtenir 504, inverse la pile et l'inverse à nouveau juste avant l'ajout du 4, puis multiplie 504 et 4 pour obtenir 2016. Imprime ensuite le nombre et termine le programme avant les 3 derniers chiffres (je pourrais faire après aussi sans aucune différence, si cela importe sur le plan des règles).
la source
Math ++ , 17 octets
En fait, cela s'imprime
2016.0
. Mais il n'y a vraiment aucun moyen d'imprimer la chaîne exacte2016
dans cette langue.La solution TI-BASIC à 17 octets fonctionnerait également ici.
la source
Polyglotte, 17 octets
Ce code, utilisé pour la première fois dans la réponse TI-BASIC de Thomas Kwa , fonctionne également dans:
JavaScript (entrée console, donc non valide)Nécessite une deuxième vérificationPerl 5 (fonction, donc non valide).Nécessite une deuxième vérificationla source
10+9*8-7+654*3-21
n'est ni une fonction JavaScript ni une fonction Perl.𝔼𝕊𝕄𝕚𝕟 2, 15 caractères / 17 octets
Try it here (Firefox only).
Traduit en
round(109876/54+3-21)
.Merci à @Dennis d'avoir économisé 2 octets!
la source
Java 7, 31 octets
Port ennuyeux d'autres réponses, dont je pense que la réponse de @Dennis 'Jelly était la première.
la source
PHP, 27 octets
(22 octets) était trop ennuyeux,
j'ai donc utilisé 10 à 9 comme numéros séparés:
d'autres solutions, principalement avec de petites astuces:
la source
Voie lactée 1.6.5 ,
2825 octetsExplication
la source
BotEngine ,
42393613x2 = 26la source
05AB1E , 15 octets
Essayez-le en ligne!
Réponse de Port of Dennis.
la source
Forth, 22 octets
Même calcul vu dans d'autres réponses.
Essayez-le en ligne
la source
C 37 octets
Même thème que plusieurs présents.
la source
VBA, 15 octets
(calcul sans honte volé à Dennis )
la source
JavaScript (ES6), 21 octets
Si le "compte à rebours" passait à 0, cela pourrait se faire en 19 octets.
Et, comme c'est maintenant 2017, cela peut aussi se faire en 21 octets:
la source