Si vous pensez que cela pourrait être amusant, mais trop de travail, pensez à participer à ce défi beaucoup plus petit.
Un peu de plaisir (et peut-être de frustration!) Pour 2016 ... "Le puzzle de l'année" de Dyalog . Prendre plaisir!
L'objectif
Rechercher des expressions Dyalog APL ( téléchargement ) (d'autres langues sont autorisées, voir Éligibilité ci-dessous) impliquant exactement les chiffres 2 0 1 6 dans cet ordre pour égaler les nombres 0 à 100. Par exemple:
20=16
×2016
2⌊016
2+0+1*6
...
L'objectif est d'utiliser le moins de caractères possible dans chaque expression (le nombre minimum de caractères pour une expression est de 5 - les quatre chiffres 2 0 1 6 et une seule fonction / opérateur primitif).
Les règles
- Chaque expression doit contenir les chiffres 2 0 1 6 (dans cet ordre) et aucun autre chiffre. Les constantes et variables prédéfinies ne sont pas non plus autorisées.
- En plus des quatre chiffres 2 0 1 6, seuls les symboles et noms intégrés, les parenthèses / accolades, les espaces, les signes moins élevés et les décimales peuvent être utilisés. Les expressions résultantes doivent être déterministes (c'est-à-dire donner le même résultat sur des évaluations répétées). Pour les non-APL, les fonctions / opérateurs avec un nom sont également autorisés; mêmes règles qu'ici .
- Supposez tous les paramètres par défaut pour votre langue. Pour Dyalog APL, cela signifie
⎕ML
et⎕IO
sont tous les deux 1 et⎕PP
10. - Chaque entrée comprenant des expressions correctes pour tous les nombres de 0 à 100 inclus sera évaluée selon le nombre de caractères utilisés par ces expressions à l'exclusion des espaces redondants (minimum 505 pour les 101 expressions).
Admissibilité
Tout le monde peut entrer. Vous pouvez répondre dans n'importe quelle langue, mais seules les réponses APL seront prises en compte pour l'acceptation. Si vous utilisez une autre langue que APL, vous pouvez utiliser des extraits, des programmes, des fonctions, etc. comme alternatives aux expressions, et vous pouvez imprimer, laisser le numéro dans un emplacement de mémoire accessible, ou renvoyer le résultat, tant que votre code est directement évalue le nombre souhaité comme n'importe quel type de données numériques standard pour votre langue.
Date de clôture
30 novembre 2016.
Prix
- Faites accepter votre réponse
- Soyez immortalisé dans le Hall of Fame de Dyalog 2016!
Soumettre votre inscription
Après le 30 novembre 2016, j'accepterai la réponse la plus courte et soumettrai votre réponse, en votre nom, au Temple de la renommée 2016 de Dyalog.
FAQ
- Est
J
(par exemple , 37 =⌈⍟!20J16
) permis? - Non: en plus des quatre chiffres 2 0 1 6, seuls les symboles et noms intégrés, les parenthèses / accolades, les espaces, les signes moins élevés et les décimales peuvent être utilisés.
- La sortie sous forme de chaîne est-elle acceptable?
- Non: égal les nombres 0 à 100.
- Chiffres physiques ou chiffres de données?
- Chiffres de données, selon OP: mêmes règles qu'ici , où l'un des exemples contient
LOG10(
. - Est-il
a+16+a←20
permis d' affecter des variables puis de les utiliser dans le cadre de l'expression (par exemple 56 = )? - Oui, mais vous ne pouvez pas utiliser une affectation d'une expression dans une autre.
J'ai la permission écrite explicite de publier ce défi ici de l'auteur original de ce défi. N'hésitez pas à vérifier en suivant le lien fourni et en contactant l'auteur. J'ai donné à l'auteur du concours d'origine le lien vers cette page dans la minute où je l'ai publiée, afin qu'il puisse vérifier si je soumets la réponse de quelqu'un comme étant la mienne.
⎕ML
et ⎕IO
(supposée être 1
) serait-elle acceptable?