Tâche: demandez à votre programme de choisir au hasard l'une des deux guillemets suivants lors de l'exécution et d'imprimer celle-ci, exactement comme indiqué.
1:
Under the spreading chestnut tree
I sold you and you sold me.
There lie they, and here lie we
Under the spreading chestnut tree.
2:
WAR IS PEACE.
FREEDOM IS SLAVERY.
IGNORANCE IS STRENGTH.
Restrictions: Les mots spreading
, chestnut
, PEACE
, FREEDOM
et STRENGTH
doit apparaître dans votre code. Aucun mot des deux citations ci-dessus ne doit apparaître plusieurs fois dans votre code .
La solution la plus courte l'emporte.
Réponses:
PHP 179
Inspiré par la réponse d' es1024 .
la source
Perl (
191184 caractères)Merci @ core1024 pour des conseils sur le golf.
la source
"you"
et utiliser$$&1
comme générateur aléatoire :)Java, 338
Je ne peux pas le faire en dessous de 338 ...
Peu dégouliné:
la source
java.io.PrintStream p=System.out
, ajouté 15 octets au total,,static<T>void p(T o){System.out.print(o);}
ajouté 12). D'autres suggestions?Javascript 229
254 256Modifier 1 en utilisant
new Date
comme suggéré par @Doorknob - je ne sais toujours pas comment les dates javascript se transforment en chaînes ou entiers ou autreEdit 2 simplifié. Beaucoup.
la source
new Date
est plus courte queDate.now()
Date
conversion: > La date JavaScript est basée sur une valeur de temps qui est en millisecondes depuis minuit 01 janvier 1970 UTC. Une journée contient 86 400 000 millisecondes. La plage d'objets Date JavaScript est comprise entre -100 000 000 jours et 100 000 000 jours par rapport au 1er janvier 1970 UTC. , lorsque vous l'avez&
, il est automatiquement converti enNumber
. Donc, vous faites essentiellement le choix aléatoire selon qu'il s'agit d'une milliseconde paire ou impaire depuis l'1970-01-01T00:00:00.000Z
époque.C #
(268) (260)(256)Ceci est exécutable dans LINQPad, en utilisant la
Dump()
méthode:Non golfé:
Mise à jour:
En utilisant l'opérateur ternaire et 1 variable supplémentaire, j'ai pu couper encore 6 caractères:
Non golfé:
Update2:
Grâce à l'ingénieuse suggestion de
tsavinho
j'ai pu enregistrer 4 caractères supplémentaires en plaçant des accolades autour de l'opération ternaire:Non golfé:
la source
Python 3 - 228
Légèrement non golfé:
la source
PowerShell 205
Utilise l'
-f
opérateur pour mettre des chaînes sur la première citation, et la seconde est jointe parIS
, après quoi il sélectionne un élément aléatoire de ces 2 citations et l'imprime ...la source
JavaScript / jQuery 396
la source
T-SQL,
337327Juste pour le plaisir, j'ai créé une autre solution en T-SQL, qui est un octet plus court que ma solution Java 8:
En déclarant le
char
s trop long, vous pouvez ajouter un espace «automatique», économisant quelques octets.En utilisant le code dans l'édition proposée par l'utilisateur PenutReaper, vous pouvez en effet raser 10 octets.
la source
Script Java (233)
A écrit cela sans regarder d'autres réponses. Fait bon usage des affectations comme expressions.
la source
05AB1E , 119 octets
Essayez-le en ligne!
la source
Python 3 , 222 octets
Essayez-le en ligne!
la source
C (gcc) ,
307289271270 octets-37 octets grâce au plafond
Essayez-le en ligne!
la source