Comme deux personnes l'ont peut-être remarqué récemment, j'ai largement abandonné le développement de Braingolf parce qu'il est ennuyeux et sans inspiration, et je suis passé à 2Col qui est un peu plus intéressant et n'est pas conçu pour être un langage de golf.
La caractéristique déterminante de 2Col est que chaque ligne de code doit comporter exactement 2 caractères, à l'exclusion de la nouvelle ligne. Cela signifie que la longueur d'un programme 2Col peut toujours être calculée comme 3n-1
où n
est le nombre de lignes dans le programme.
Voici donc mon défi: étant donné le code 2Col sous forme de chaîne, affichez true s'il s'agit d'un code 2Col valide (chaque ligne est exactement de 2 caractères et conforme à la 3n-1
formule), et falsey sinon.
Contribution
L'entrée doit être considérée comme une chaîne unique ou un tableau de caractères.
Production
Une valeur véridique si la chaîne d'entrée est une mise en page valide, et une valeur falsey dans le cas contraire.
Votre code doit être cohérent dans les valeurs de vérité / falsey qu'il utilise
Cas de test
======
F!
$^
----
truthy
======
======
*8
+1
Sq
----
truthy
======
======
nop
xt
----
falsey
======
======
+1
+1
#^
----
falsey
======
======
<empty string>
----
falsey
======
======
ye
----
truthy
======
======
no<space>
----
falsey
======
======
test
----
falsey
======
======
puzzle
----
falsey
======
Notation
C'est le code-golf donc le moins d'octets gagne!
puzzle
. Cela rendra invalides les solutions qui font toute la longueur de la chaîne modulo 3, puis annulées (ce qui fonctionne pour tous les cas de test actuels).
true
falsey etfalse
véridique