“¤'aẎṚl’b4ạ37ż“ɱaɲṢbḊİcİðdðṖeṖ@h@'i(‘ḅ⁹Ọɓi@€Ṁ‘ị;⁸LḂx@”:¤
完全なプログラム。
オンラインでお試しください!
注:(ɱaɲ
!)非にはいくつかのパターンがありますが:
序数は(中央の列はほぼ連続し、多くの左と権利が同じであること-の2つだけオフ一つと10ずつオフ)それだけで、このようなAのために非常に十分なようではありません。これを介して任意のバイトを保存できる小さなデータセット。
最初の13バイトも“¡ÐɼU¹’ṃ“"%#‘
。
どうやって?
“¤'aẎṚl’b4ạ37ż“ ... ‘ḅ⁹Ọɓi@€Ṁ‘ị;⁸LḂx@”:¤ - Main link: list of characters, frown
“¤'aẎṚl’ - base 250 number = 4064044420859
b4 - to base 4 = [3, 2, 3, 0, 2, 0, 3, 2, 3, 3, 2, 3, 0, 2, 0, 3, 2, 3, 3, 2, 3]
ạ37 - absolute diffence with 37 = [34, 35, 34, 37, 35, 37, 34, 35, 34, 34, 35, 34, 37, 35, 37, 34, 35, 34, 34, 35, 34]
“ ... ‘ - code page indexes = [162, 97, 163, 183, 98, 193, 198, 99, 198, 24, 100, 24, 203, 101, 203, 64, 104, 64, 39, 105, 40]
ż - zip together = [[34, 162], [35, 97], [34, 163], [37, 183], [35, 98], [37, 193], [34, 198], [35, 99], [34, 198], [34, 24], [35, 100], [34, 24], [37, 203], [35, 101], [37, 203], [34, 64], [35, 104], [34, 64], [34, 39], [35, 105], [34, 40]]
⁹ - literal 256
ḅ - convert from base = [8866, 9057, 8867, 9655, 9058, 9665, 8902, 9059, 8902, 8728, 9060, 8728, 9675, 9061, 9675, 8768, 9064, 8768, 8743, 9065, 8744]
Ọ - convert to characters = "⊢⍡⊣▷⍢◁⋆⍣⋆∘⍤∘○⍥○≀⍨≀∧⍩∨"
ɓ - dyadic chain separation, call that smiles
i@€ - first index of €ach frown character in smiles
Ṁ - maximum (any ':' was not found so yielded 0)
‘ - increment
ị - index into smiles
¤ - nilad followed by link(s) as a nilad
⁸ - chain's left argument, frown
L - length
Ḃ - mod 2
”: - literal ':'
x@ - repeat with swapped @rguments
; - concatenate
- implicit print