Une célébration des multiples visages de l'APL
Étant donné une chaîne parmi celles de la colonne 1 ou de la colonne 2 du tableau ci-dessous, renvoyez le voisin de la chaîne à sa droite. En d'autres termes, si une chaîne est donnée dans la colonne 1, retournez la chaîne de la colonne 2 sur cette ligne, et si une chaîne est donnée dans la colonne 2, retournez la chaîne de la colonne 3 sur cette ligne.
Les points de code (autres que ceux :
) sont répertoriés à l'extrême droite.
colonne 1 colonne 2 colonne 3
:⊢
→ ⍡
→ ⊣:
U + 22a2 U + 2361 U + 22a3
:▷
→ ⍢
→ ◁:
U + 25b7 U + 2362 U + 25c1
:⋆
→ ⍣
→ ⋆:
U + 22c6 U + 2363 U + 22c6
:∘
→ ⍤
→ ∘:
U + 2218 U + 2364 U + 2218
:○
→ ⍥
→ ○:
U + 25cb U + 2365 U + 25cb
:≀
→ ⍨
→ ≀:
U + 2240 U + 2368 U + 2240
:∧
→ ⍩
→ ∨:
U + 2227 U + 2369 U + 2228
Anecdote: La plupart de ces symboles sont valides ou proposés dans certains dialectes APL (ce sont tous des liens).
Par demande, juste les symboles:
:⊢ ⍡ ⊣:
:▷ ⍢ ◁:
:⋆ ⍣ ⋆:
:∘ ⍤ ∘:
:○ ⍥ ○:
:≀ ⍨ ≀:
:∧ ⍩ ∨:
Python 3 ,
140137116 octetsEssayez-le en ligne!
la source
:
yeux.Gelée , 56 octets
Un programme complet.
Essayez-le en ligne!
Remarque: (
ɱaɲ
!) Bien qu'il existe un modèle de non:
ordinaux (colonne du milieu presque consécutive, beaucoup de gauche et de droits étant les mêmes - seulement deux hors d'un et un hors de dix), cela ne semble tout simplement pas assez pour un tel petit ensemble de données pour permettre à tout octet d'enregistrer.Les treize premiers octets pourraient également l'être
“¡ÐɼU¹’ṃ“"%#‘
.Comment?
la source
PHP , 147 octets
Essayez-le en ligne!
la source
array_flip
!array_flip
est un ou deux octets plus court comme alternativearray_search
et le multi-octet dans ce cas coûte beaucoup d'octets. Ce n'est pas agréable d'être plus longtemps en C #05AB1E ,
585654 octetsEssayez-le en ligne!
Explication
La méthode ci-dessus devrait fonctionner avec n'importe quel nombre dans la plage
[8676 ... 8728]
, donc si je peux trouver un nombre qui peut être généré en 3 octets, je pourrais enregistrer un octet sur la solution actuelle.la source