Choisissez votre mot anglais commun préféré à 6 lettres qui n’a pas de lettres répétées , telles que wombat
.
Ecrivez un programme dans une grille de caractères N × N sans commentaires tels que chaque ligne et chaque colonne contiennent toutes les lettres de votre mot en minuscule, dans n'importe quel ordre. Le programme doit produire une définition de votre mot en 36 caractères ou plus .
Règles
- Sortie sur stdout. Il n'y a pas d'entrée.
- Votre mot doit être sur Dictionary.com et ne contenir que z. Pas de noms propres, pas d'acronymes, pas d'abréviations, pas de contractions.
- Votre programme et votre sortie ne peuvent contenir que des caractères ASCII imprimables (codes hexadécimaux 20 à 7E). (Cela ne compte pas les sauts de lignes nécessaires dans la grille du programme.)
- Les commentaires sont tout ce que le compilateur ou l'interprète ignore traditionnellement. Vous pouvez utiliser un code qui ne contribue pas à la sortie ou qui n'est pas officiellement exécuté.
- La définition de sortie doit être grammaticale et précise, mais peut certainement être drôle ou astucieuse.
- Toute ligne ou colonne contenant au moins 6 lettres uniques de votre mot en minuscules est valide. Les diagonales n'ont pas d'importance.
Notation
C'est du code golf, mais comme toutes les soumissions doivent être dans le même format carré, vous pouvez simplement spécifier votre score avec N. Le plus petit N gagne, et bien entendu, un N inférieur à 6 est impossible. En cas d'égalité, la réponse la plus votée l'emporte.
Exemple
Si votre mot était wombat
votre programme pourrait ressembler à ceci (N = 7):
wombatD
ombatEw
mbatFwo
bat(wom
atWwomb
tBwomba
)wombat
Notez que chaque ligne et chaque colonne contient les caractères w
o
m
b
a
t
.
La sortie pourrait être: (40 caractères)
Cute short-legged Australian marsupials.
la source
golfed
" et la définition"a description of this program's code"
(pour tous ceux qui peuvent comprendre comment faire cela!).Réponses:
Perl - raisins - 11
edit: J'ai accidentellement fait cela 12 lignes ...
Sortie:
Mise à jour!
J'ai éliminé une ligne pour la ramener à 11 mais je devais changer la phrase. Espérons que je n'ai commis aucune erreur cette fois!
Sortie:
La sortie est de 37 caractères.
la source
Javascript - action - 15x15
"Ce n'est certainement pas le plus court, mais PEW PEW PEW." - James Bond
Lien vers la
sortie jsfiddle (37 caractères):
la source
Befunge 93, n = 13
Cela fonctionne en redirigeant la chaîne avec
"v
et>"
. Cela ne fonctionne que lorsque la longueur de côté et la longueur de mot sont identiques et que la longueur de côté est supérieure à 11. À l'heure actuelle, cela fonctionne pour le "mot"vwombat
, et donc pourwombat
.Les sorties
Cute short-legged Australian marsupial
la source
C (mot: "chercheur", N = 16)
Compilé avec GCC, avec les options
-Dfinder="" -Df="" -Di="" -Dn="" -Dd="" -De="" -Dr=""
.Il sort
it's defined as a thing that can find other things
(50 caractères). Je crois qu'il respecte toutes les règles, mais n'hésitez pas à me dire s'il y a une erreur!la source
"-Dfinder=main(){puts(it's defined as a thing that can find other things);}" -Dinderf=; -Dnderfi=; -Dderfin=; -Derfind=; -Dnderfi=;
GolfScript, N = 12
L’exemple wombat codé en GolfScript. La sortie est
comme indiqué dans la question. La partie intéressante est que vous pouvez utiliser la plupart des mots et des réponses et il suffit d' insérer les lettres correspondantes dans la solution tant que vous ne produisez pas un GolfScript intégré qui sont très rares,
p
,n
étant de plus évidentes. Toutes les autres combinaisons mènent à des variables GolfScript valides qui sont des opérations sans opération par défaut.la source
Befunge-98 (n = 12)
J'ai choisi le kelvin parce qu'il y en avait une. Les sorties
kelvin is like celsius but it's lowe
la source
Si temp
reste 29 caractères sur 36.;)k
colonne 9e
.Python, n = 15
La parole est "canoës"
Sortie:
la source
canoes
. Fixé.Perl - répéter - 11
Sortie:
Avec le recul, j'aurais peut-être dû en faire une boucle.
la source
e
lignes par ligne, alors je me suis dit que je pourrais aussi bien la poster.Rubis ,
haters
N = 10Après des heures de tentatives manuelles, d'écriture d'un programme générateur et de réglages de paramètres, j'ai finalement trouvé une solution pour N = 10!
Sorties
Haters nurse hate in hardest hearts.
, exactement 36 caractères. Essayez-le en ligne!J'ai choisi Ruby parce que ses variables ne nécessitent pas
$
(Perl) et que les chaînes entre guillemets simples peuvent contenir des nouvelles lignes (Python). Le fait que latr
méthode utilise deux des lettres de mon mot était un bonus inattendu. Le noyau du programme est simple:Bien sûr, mettre toutes les lettres en ligne n'était pas simple. Je suis passé par plusieurs variantes de la même structure et ai appris plusieurs choses à propos de Ruby (
tr
sans avoir besoin de parenthèses,?\s
c’est une autre façon d’obtenir un espace). Il y avait beaucoup d'impasses et plusieurs faux positifs. Et ensuite ... le succès!Voici l'essentiel de mon programme générateur hacked-together, si quelqu'un est intéressé.
la source
Golfscript (n = 10)
Mon premier golfscript! Il imprime
kelvin is like celsius but it's lowe
la source
GolfScript, 13x13
Pas le plus petit ...
... mais ...
(Les sauts de ligne dans les mots sont intentionnels, car sinon, j'aurais des espaces de début ou de fin qui sembleraient moins carrés.)
la source
Python, N = 11
Word est "parent". Ce code n'est pas joli, mais ça marche.
Sortie:
parent: a person that made a person
Edit: En quelque sorte, j'ai raté le fait que les colonnes doivent également contenir le mot. Rétrospectivement, un langage incluant des caractères finaux dans le langage ne convenait pas bien à ce casse-tête.
la source
parent
. Le premier, par exemple, n'a pas dea
.p
manque dans 6 et 8a
.: 4, 6, 7, 11r
.: 4, 10, 11e
.: 4, 5, 8, 9, 11n
.: 3, 5, 7, 11t
.: 1, 3, 6, 8.Pip , n = 14 (non compétitif)
La langue est plus récente que la question. Le mot est
quines
. 1Affiche la définition suivante (certes incomplète):
Essayez-le en ligne!
La partie significative du code s'exécute ainsi:
Le reste du code est arbitraire no-ops. La difficulté principale dans les sections "remplissage" n’a jamais été d’évaluer
q
, car cela inciterait l’utilisateur à entrer une ligne d’entrée (ce n’est pas un problème pour TIO, mais je voulais le corriger dans tous les environnements). J'ai utilisé des opérateurs logiques de court-circuit|
et&
, et ternaire?
, pour empêcherq
l'évaluation.1 Dictionary.com a une entrée pour quine , avec une section sur la signification de la programmation en bas. Puisque "quine" est un nom dénombrable, je dirais que "quines" est un mot valide.
la source
Javascript, N = 8
Ma parole est des alertes .
Mon code génère la définition de la fonction d'alerte javascript plusieurs fois. La définition de alerte par Javascript est "function alert () {[code natif]}".
Seules les trois premières lignes de code contribuent réellement à la sortie. Les 5 dernières lignes sont des erreurs de syntaxe, mais les règles d'origine précisaient que tout le code ne devait pas être exécuté tant que la sortie était correcte.
Voici un lien vers le violon: http://jsfiddle.net/tze76pum/
la source