Problème
Étant donné une entrée a
où a est une valeur de vérité / fausse sortie, le cube exact impossible ci-dessous si véridique et le cube normal exact ci-dessous si falsey.
Entrée truthy
:
___________________________________
/ _______________________________ /|
/ / _____________________________/ / |
/ / /| | / / |
/ / / | | / / |
/ / /| | | / / /| |
/ / / | | | / / / | |
/ / / | | | / / /| | |
/ /_/___| | |____________________/ / / | | |
/________| | |_____________________/ / | | |
| _______| | |____________________ | | | | |
| | | | | |___________________| | |__| | |
| | | | |_____________________| | |____| |
| | | / / _____________________| | |_ / /
| | | / / / | | |/ / /
| | | / / / | | | / /
| | |/ / / | | |/ /
| | | / / | | /
| | |/_/_________________________| | /
| |______________________________| | /
|__________________________________|/
Entrée falsy
:
___________________________________
/ _______________________________ /|
/ / _____________________________/ / |
/ / /| | / / |
/ / / | | / / |
/ / /| | | / / /| |
/ / / | | | / / / | |
/ / / | | | / / /| | |
/ /_/___|_|_|____________________/ / / | | |
/__________________________________/ / | | |
| ________________________________ | | | | |
| | | | | |___________________| | |__| | |
| | | | |_____________________| | |____| |
| | | / / _____________________| | |_ / /
| | | / / / | | |/ / /
| | | / / / | | | / /
| | |/ / / | | |/ /
| | | / / | | /
| | |/_/_________________________| | /
| |______________________________| | /
|__________________________________|/
Règles
- Espace de fin autorisé.
- Retour à la ligne autorisé.
- les valeurs de vérité / falsey peuvent être échangées (vérité pour cube réel et falsey pour cube impossible)
- Le style d'entrée doit être spécifié
- Le code le plus court en octets gagne
Réponses:
SOGL V0.12 , 145 octets
Essayez-le ici!
Ce programme stocke les données de la ligne sous forme de 3 nombres de base 36-46 séparés et décode chacun et
ž
s les valeurs dans le tableau principal.En raison de la manière abusive dont je dessine les lignes diagonales, la sortie a 27 lignes de lignes avec des espaces (ce qui est autorisé par l'OP)
entrée:
0 - impossible
1 - possible
Explication:
la source
1
résultat ne devrait-elle pas être la même sortie que d'autres entrées véridiques comme"test"
?test
saisie dans la zone de saisie entraîne une erreur. Si c'est un gros problème, je pourrais juste lui faire prendre une chaîne où "" serait faux et tout le reste vraiJelly ,
187166 octetsUn programme complet.
Essayez-le en ligne!
Comment?
103 octets sont un nombre de base 250 à 101 chiffres, qui est une compression en base 8 d'un cube possible, avec des espaces de fin ajoutés pour égaliser les longueurs de ligne, sans nouvelles lignes et sans 18 caractères à partir du milieu de chaque ligne, comme ceci , mais sans retour à la ligne:
Les 8 chiffres de base 8 représentent les chaînes de caractères:
Donc, la compression est alors comme ci-dessous où
1
s,6
s,7
s et0
s doivent être remplacés par les chaînes montrées ci-dessus:Le programme inverse le processus et change les caractères qui doivent être modifiés si le cube doit être impossible:
la source
JavaScript (ES6),
352344333 octetsEnregistré 2 octets grâce à @YairRand
Démo
Afficher l'extrait de code
la source
a=
et le remplacement d'une référence à celle-ci0
(qu'elle équivaut toujours lorsqu'elle est référencée) économise deux octets.charbon , 188 octets
Essayez-le en ligne! Le lien est vers la version falsifiée; changer l'entrée de
0
à1
pour la version véridique. Voici le code détaillé approximatif pour le programme ci-dessus:Imprimez la partie du dos visible à travers le "trou" droit.
Imprimez le "trou" droit.
Imprimez le bord extérieur du cube.
Imprimez le "trou" supérieur du cube.
Imprimez le "trou" avant du cube.
Imprimez la partie du dos visible à travers le "trou" avant.
Rendez le cube impossible si nécessaire.
Imprimez la partie du dos visible à travers le "trou" supérieur.
la source