Wyświetl „Wesołych świąt!”

11

Twoim zadaniem jest wydrukowanie następującej grafiki ASCII:

 _     _                            _______                           _ 
| |   | |                          (_______)          _              | |
| |__ | | ____ ____  ____  _   _    _____   ____  ___| |_  ____  ____| |
|  __)| |/ _  |  _ \|  _ \| | | |  |  ___) / _  |/___)  _)/ _  )/ ___)_|
| |   | ( ( | | | | | | | | |_| |  | |____( ( | |___ | |_( (/ /| |    _ 
|_|   |_|\_||_| ||_/| ||_/ \__  |  |_______)_||_(___/ \___)____)_|   |_|
              |_|   |_|   (____/

Pamiętaj, że to jest , więc wygrywa kod z najmniejszą liczbą bajtów. Powodzenia.

Oliver Ni
źródło
2
@FryAmTheEggman jest to coś zupełnie innego niż rzekomy duplikat Rickroll. Stosuje się tylko kilka symboli: |()/\_co prowadzi do zupełnie różnych form kompresji. Wcześniej mieliśmy podobne wyzwania związane ze sztuką ASCII, ale chciałbym, aby to pytanie zostało uruchomione, aby sprawdzić, czy ktoś korzysta z geometrii. Z drugiej strony nie jest to nadzwyczaj niezwykłe, a masz rację, nie potrzebujemy wielkanocnej zawieszki.
Level River St
1
@FryAmTheEggman Najlepsze rozwiązanie złożoności Kołmogorowa zależy w dużej mierze od struktury wyniku. To nie jest tekst, więc nie jest duplikatem.
lirtosiast
7
@lirtosiast Ograniczony zestaw znaków może mieć znaczenie, ale wydaje mi się, że prawie na pewno zostaną zdominowane przez te same techniki, co w pytaniach tekstowych. To tylko moja opinia, społeczność decyduje w końcu, które z naszych poglądów egzekwować.
FryAmTheEggman
4
Możliwy duplikat gry Minecraft Mirrored
Blue
1
Jest inaczej, ponieważ nie ma danych wejściowych, dlatego nie trzeba ich pobierać i analizować.
thepiercingarrow

Odpowiedzi:

10

Bubblegum, 130 bajtów

0000000: 758f b579 0530 18c4 7a4f a1d2 7fe5 8102  u..y.0..zO......
0000010: 5ae4 760f 5de8 91ee b3cc 8400 f523 2c3c  Z.v.]........#,<
0000020: 4656 0850 3f60 5b86 5fe4 8290 15a2 84a0  FV.P?`[._.......
0000030: 5a61 4d0b b64f 2b35 c476 eb1e 844e c841  ZaM..O+5.v...N.A
0000040: 08c8 731d 1a02 ead0 1547 1d70 beba 9fd6  ..s......G.p....
0000050: 31bf 5fdb 6c72 1d7b 1051 ed8a a884 7c76  1._.lr.{.Q....|v
0000060: 0fa7 db91 1503 c43c 9b18 124f cdb3 4220  .......<...O..B 
0000070: 9631 716b a71c 3bd6 ed8b 0b62 7ebd 55cf  .1qk..;....b~.U.
0000080: 7a07                                     z.

Wypróbuj online.

Skompresowane za pomocą zopfli --deflate --i10000.

spaghetto
źródło
Czy to nie 588 bajtów?
thepiercingarrow
15
@MarkWright To, co zostało opublikowane, to zrzut rzeczywistego kodu
Sp3000,
10

JavaScript (ES6), 377 373 360 359 345 bajtów

Dzięki @Neil za jednobajtowe oszczędności i @ edc65 za kolejne 14!

Pomyślałem, że dam temu szansę. Kompresuje typowe powtarzające się wzory w tekście.

_____ (5 znaków podkreślenia) jest przechowywany jako _5

      (5 spacji) jest przechowywany jako  5

 | | | | |(5  |wzoru) jest przechowywany jako~5


console.log(` _ 5_ 28_7 27_
|~ 2~2 26(_7) 10_ 13~2
|~_2~2 _4 _4 2_4 2_ 3_ 4_5 3_4 2_3|~_ 2_4 2_4|~
| 2_2)|~/ _ ~ 2_ \\| 2_ \\|~3 ~ 2_3) / _ ~/_3) 2_)/ _ 2)/ _3)_|
|~ 2~ ( (~9_|~ ~2_4( (~2_3~2_( (/ /|~ 4_
|_| 2~_|\\_|2_|~|_/|~|_/ \\_2 ~ ~_7)_|2_(_3/ \\_3)_4)_| 2~_|
 13~_| 2~_| 3(_4/`.replace(/(.)(\d+)/g,(_,a,b)=>a.repeat(b)).replace(/~/g,' |'))
jrich
źródło
Zwróć uwagę na ES6 =>.
CalculatorFeline
Wydaje się, że bajty mogą być zapisywane przez RLEing _s.
CalculatorFeline
@CatsAreFluffy Co przez to rozumiesz? Kompresuje to serie _ze związkiem _następnie ile istnieją w biegu
jrich
Ups, wciąż miałem wersję 377 bajtów.
CalculatorFeline
~1lub _2nie wydaje się tego warte. (Dlaczego |2na przykład nie użyć ?)
Neil
8

BinaryFuck , 565 378 bajtów

Zasadniczo przechowuje znaki użyte w tablicy, a następnie nawiguje po tablicy, odpowiednio je drukując. Obecnie dość długi, skróci go.

1000010000000000000000110011110001010010000011011111010010110001011011000000010010111011001111011110010010010000010000010000000000000010000010000000000010000010000000000011011011011011011011011011001111010010000000000110001010000000000000000010000000000011011111010010001010001001001001010010001010000000000000000000000000000010001001001001010000000000000000000000000000000011011011011100010100011100100100100100010100011100100100100100100100100100100100100100100100100100100100100100100100100100100100100010100100100100100100100011100100100100100100100100100100100100100100100100100100100100100100100100100100100010100011100010010010010100011011011011011100010100011100010100100100011100010100011100010100100100100100100100100100100100100100100100100100100100100100100100100100100011011100010010010100100100100100100100010100011011100100100100100100100100100100010100011100100100100100100100100100100100100100100011100010100011100010010010010010100011011011011011100010100011100010010100100011100011100010100011100010100010100100100100011100010100100100100011100100010100100100100011100100010100011100100100010100011100100100100010100100100100100011100100100010100100100100011100100010100100100011011100010100011100010010100011100100010100100100100011100100010100100100100011011100010100011100010010010010010100011011011011011100010100100010100100010100011011011100010100011100011011100010010010100010100011100100011100010100100010100011100010010010100011011011011100010100100010100011100010010010100011011011011100010100011100010100011100010100011100010100100011100010100100010100100100010100011011100011011011100010010010100010100011100100011100011011100010010010010100100100010100011011100100010100010100011011011011011100010010010100010100011100100010010100011011011011011100010010010100010100100100010100011100011011100010010010010010100011011011011011100010100011100010100100100011100010100011011100010010100011011100010010100011100010100011100010100011100010100011100010100011100010100011100010100011100010100011100010100011100010010100011011100010100011100010100100011100010100011100010010100100100100011011011100010010100011011100010010100011100010100011100010010100100100011100011100010100011100010010100011011011100010010100011011100011100010010010100011011011100010010100010100011100010100100100100010100011100010010010010100011011011011011100010010100011011100010100100100011100010010100011011100010010010010100011011100011011100100010010100011011100010100011100100010010100011011011011100010010100010100011100100010010100011011011011100010010010100010010010100011011100100011100100011100010100100011100010010100100100100100100100010100011100011011100100010010100011011011100010010010100100100011011011011100010010010100010010010100011011100100100010100011100100100100010100011100011011100010100100100011100010010100011011100010010010010010100011011011011100100100100100100100100100100100100100100011100010010100011011100010100100100011100010010100011011100010100100100011011100010010010100100100100011011011011100

Oto nielepszy kod:

+>+++++[<[->>+<<]>>[-<<++>>]<-]<
[>>>+>+>++++>+>+++>+>+++<<<<<<<<<-]
>>+++[->+++++>+++<<]>>->---->>->+++++++++>---->++++++++++
<<<<.>.<.....>.<............................>.......<...........................>.<.>>>>.<<<<<.>.<.>...<.>.<.>..........................<<.>>>.......>.<<..........>.<..............<.>.<.>>>>>.<<<<<.>.<.>>..<.<.>.<.>.>....<.>....<..>....<..>.<...>.<....>.....<...>....<..>...<<.>.<.>>.<..>....<..>....<<.>.<.>>>>>.<<<<<.>..>..>.<<<.>.<.<<.>>>.>.<..<.>..>.<.>>>.<<<<.>..>.<.>>>.<<<<.>.<.>.<.>.<.>..<.>..>...>.<<.<<<.>>>.>.<..<.<<.>>>>...>.<<..>.>.<<<<<.>>>.>.<..>>.<<<<<.>>>.>...>.<.<<.>>>>>.<<<<<.>.<.>...<.>.<<.>>.<<.>>.<.>.<.>.<.>.<.>.<.>.<.>.<.>.<.>.<.>>.<<.>.<.>..<.>.<.>>....<<<.>>.<<.>>.<.>.<.>>...<.<.>.<.>>.<<<.>>.<<.<.>>>.<<<.>>.>.<.>....>.<.>>>>.<<<<<.>>.<<.>...<.>>.<<.>>>>.<<.<<..>>.<<.>.<..>>.<<<<.>>.>.<..>>.<<<<.>>>.>>>.<<..<..<.>..<.>>.......>.<.<<..>>.<<<.>>>...<<<<.>>>.>>>.<<...>.<....>.<.<<.>...<.>>.<<.>>>>>.<<<<..............<.>>.<<.>...<.>>.<<.>...<<.>>>....<<<<.

EDYCJA: zmieniając kolejność znaków w komórkach, zapisałem 186 bajtów!

thepiercingarrow
źródło
8
Nie tak działa licznik bajtów. Jeśli nie możesz przekazać dokładnej sekwencji bajtów do interpretera, nie możesz żądać takiej liczby bajtów jako liczby bajtów.
Klamka
1
Jeśli nie jest Bf-interpreter, który odbywa się w 3-bitowym / char. Dodaj link do interpretera i zrzut szesnastkowy / pastebin zakodowanego kodu, jeśli chcesz przejąć 565 bajtów.
Downgoat
2
Tak, jest 3-bitowy tłumacz . Dodaj link do tego w swojej odpowiedzi wraz z zrzutem heksadecymalnym / binarnym twojego kodu. Język nie byłby już dziwakiem, więc musiałbyś w nagłówku wpisać „CompressedFuck”. Polecam zachować go takim, jakim jest, gdy widząc ludzi, którzy pieprzą mózg, nie oczekują, że będzie to bardzo krótkie.
Downgoat
1
To nie wygląda na prawidłowy program BinaryFuck; to nie zaczyna się od 1. Podaj link do interpretera i zrzut heksowy kodu źródłowego, aby Twoje wyniki mogły zostać odtworzone.
Dennis
2
Jeśli chcesz odebrać 3 bity na instrukcję zgodnie z Binaryfuck, musisz opublikować kod źródłowy Binaryfuck (prawdopodobnie w zrzutie szesnastkowym lub zakodowanym w base64) i na tej podstawie obliczyć bajty. Na obecnym etapie to przedłożenie jest oszustwem z 1012 bajtami, z czego 3 są obce (nowe linie).
Mego
6

JavaScript (ES6), 380 bajtów

Dla kompletności to mój wysiłek, aby użyć innej metody kompresji, chociaż jak się okazuje, nie jest ona tak wydajna jak kodowanie długości przebiegu. Każda cyfra oznacza, że ​​ostatnie N już wygenerowanych znaków jest powtarzanych. Kolejne cyfry mogą powtarzać już powtarzające się znaki, np. | 23Zamienia się w | | |. Chciałbym tylko skompresować serię trzech postaci.

f=(s=` _  26  2479__23   2499_ 
| 2  6  2379(__23)   25_  237|2
| |__ |2 __25  __2  _ 4   ___2   __2  ___| |_  ___6_| |
|  __)| |/ _  |  _ \\6| 24 |  ___) / _  |/___)  _)/ _  )/ ___)_|
| 2  | (2 |248 |_| 23|__2( 2| |___ |2_( (/ /| 2   _ 
|_|   |_|\\_||_| ||_/6 \\__  |3__23)_||_(___/ \\___)_5|   |_|
  237|_|6   (__2/`,r=s.replace(/(.*?)(\d)/,(_,p,n)=>p+p.slice(-n)))=>r==s?r:f(r)

o.textContent = f()
<pre id=o></pre>

Neil
źródło
6

C, 517 427 407 bajtów

  • zapisano kilka bajtów dzięki @ceilingcat
c,i;main(m){for(char*s=" _ 4_ 999_6 998_ 1\n|B 2|B 997(_6) 9_ 94|B \n| |_1C _3 _3 1_3 1_ 2_ 3_4 2_3 1_2|B_ 1_3 1_3|B \n| 1_1)|B/ _ 1\\| 1_ \\| 1_E 1| 1_2) / _ 1|/_2) 1_)/ _ 1)/ _2)_| \n|B 2| ( (J_|B 1|B_3( (C_2C_( (/ /|B 3_ 1\n|_| 2|_|\\_||_|B1_/|B1_/ \\_1 1| 1|_6)_|1_(_2/ \\_2)_3)_| 2|_| \n 94|_| 2|_| 2(_3/\n";*s;s++)for(i=isdigit(*s)?c=m,*s-48:isalpha(*s)?c=0,*s-65:(c=*s,1);i--;)printf(c?m=c,&c:" |");}

Ungolfed Wypróbuj online

#include <stdio.h>
#include <stdint.h>

char m = 0;

void g(char c, int i)
{
    while(i--) c ? m=putchar(c) : printf(" |");
}

void p(char* s)
{
    while(*s)
        isdigit(*s) // golfed if-else-if
        ? g(m,*s-48)
        : isalpha(*s)
          ? g(0,*s-65)
          : g(*s,1)
        ,
        s++;
}

int main()
{
    p(" _ 4_ 999_6 998_ 1\n|B 2|B 997(_6) 9_ 94|B \n| |_1C _3 _3 1_3 1_ 2_ 3_4 2_3 1_2|B_ 1_3 1_3|B \n| 1_1)|B/ _ 1\\| 1_ \\| 1_E 1| 1_2) / _ 1|/_2) 1_)/ _ 1)/ _2)_| \n|B 2| ( (J_|B 1|B_3( (C_2C_( (/ /|B 3_ 1\n|_| 2|_|\\_||_|B1_/|B1_/ \\_1 1| 1|_6)_|1_(_2/ \\_2)_3)_| 2|_| \n 94|_| 2|_| 2(_3/\n");
    return 0;
}
Khaled.K
źródło
5

JavaScript, 297 bajtów

console.log(` 29 288999002889 3 
19 18899 500_)82891
1__ 1 0_ 02022 290_2 02012020_1
|3_)162|3 \\|3 \\1 19|90) 62|/0)3)62)60)_|
19 |55 1 1 1 1 71910_(5 10 1_(56/193 
7|4\\_|717/176\\_2|9|00_)_|7(06\\0)0_)_|4
8 44950_/`.replace(/\d/g,n=>`___,| |,_  ,  _,   |_|, (,/ ,|_,          ,  `.split`,`[n]))

Proste kodowanie dziesięciu najbardziej znanych (o ile wiem) podciągów. Nie są uporządkowane z powodu nakładania się; mój koder (poniżej) musi zobaczyć np. '_ 'i ' _'wcześniej ' '.

(s,a,t=s)=>a.map((t,i)=>s=s.split(t).join(i))&&[s,(b=>{b=new Map;for(i=0;i<s.length;i++)for(j=0;j<i;j++)b.set(s.slice(j,i),s.length-s.split(s.slice(j,i)).join().length-i+j-1);return[for(x of b)if(x[1]>0&&!/\d/.test(x[0]))x].sort(([a,b],[c,d])=>b-d)})(),t.length-(s+' '+a).length]

To zajmuje ciąg i tablicę podciągów do zakodowania i zwraca a) zakodowany ciąg b) listę potencjalnych następnych oszczędności c) liczbę dotychczas zapisanych bajtów.

Neil
źródło
5

𝔼𝕊𝕄𝕚𝕟, 72 znaki / 209 bajtów

`Эć훼쎧漤詼媰਀㻆僚픈耊Ⓢኍ⋱쬝ᇑ덆䖇䂊՛樥첾㨭쯠ཁ톇:덱螟醮䖉⥊覂削ꇉ漈涹႘챘ඕ꼳⁒᭷Ừ䒕鶀놜㆝〢ﱱꎀ쎴䋈㗂䅉Ⴄቀ쳵菨ⶩ∉툲耀

Try it here (Firefox only).

Przynajmniej liczba znaków jest świetna, ale nie możemy użyć niestandardowej strony kodowej. To tylko dekompresja LZString. Pracuję również nad innym rozwiązaniem - więcej na ten temat później.

Mama Fun Roll
źródło
5

Perl 5, 286 bajtów

perl -M5.01 happy.pl, gdzie happy.pljest:

$_='u5u28 7_27u
~~x~~25 (7_)10u7x~~
~p_ ~~4_ 4_x4_x_3u4 5_3 4_x3_~px4_x4_~~
~u_)~|/ux~u \~u \4~ ~ 3_) /ux|/3_)x_)/ux)/ 3_)_|
~~x~( ( 8~p~~ ~|4-( ( ~p__ ~p( (/ /~~3u
p~xp|\_|p~|p/~|p/ \__x~ p6_)_|p(3_/ \3_)4_)_~xp|
14 p~xp~x(4_/';s/u/ _/g;s/\d+(.)/$1x$&/ge;s/x/  /g;s/~/| /g;s/p/|_/g;say

Dzięki Dom Hastings (w komentarzu tutaj) za pomysł, który oszczędził mi dwa bajty i doprowadził do kolejnego mojego pomysłu, który oszczędził cztery kolejne.

msh210
źródło
Z pewnością powinieneś użyć tego Ljako skrótu |_;-)
Neil
3

Python 2, 343 328 316 bajtów

To rozwiązanie nie korzysta z funkcji dekompresyjnych ani innych importów.

o=""
for i in range(250):j=ord(")*I*yyQZyyI*(!+9!+yyA,Z-q*y9!+(!+2)!!B)B1B1*9*AJ9B1:!+*1B1B!+(+12-!+/)*1+1*).+1*).!!!+1+1:-)/)*1+/:-1*-/)*1-/):-*+(!+9!,),)!!!!!!!!+*!+1!+B,),)!+:)!+*,),/)/!+A*(+*+9+*+.*3*!3*/!3*/).21+1+Z-*3*,:/).:-B-*+9+*+(y9+*+9+*+9,B/(".replace("!","+)")[i])-40;o+="\n _|()\/"[j&7]*(j/8+1)
print o

Wersja do odczytu:

DATA=(")*I*yyQZyyI*("
"!+9!+yyA,Z-q*y9!+("
"!+2)!!B)B1B1*9*AJ9B1:!+*1B1B!+("
"+12-!+/)*1+1*).+1*).!!!+1+1:-)/)*1+/:-1*-/)*1-/):-*+("
"!+9!,),)!!!!!!!!+*!+1!+B,),)!+:)!+*,),/)/!+A*("
"+*+9+*+.*3*!3*/!3*/).21+1+Z-*3*,:/).:-B-*+9+*+("
"y9+*+9+*+9,B/(").replace("!","+)")
SIZE=250
o=""
for i in range(SIZE):
 j=ord(DATA[i])-40
 o+="\n _|()\/"[j&7]*(j/8+1)
print o

Używa wersji kodowania długości przebiegu z 3 bitami dla symbolu z zestawu „\ n _ | () /”. Pozostała część bajtu jest długością, ale ograniczyłem długość do 10 i zmanipulowałem ją tak, aby wyniki były znakami do wydruku, które są poprawne w łańcuchu pythonowym bez żadnych znaków ucieczki.

Zastąpienie ciągu odpowiadającego „|” pojedynczemu znakowi w zakodowanych danych pozwala zaoszczędzić jeszcze kilka bajtów.

Usunąłem końcowe spacje w liniach 1 i 5, które mogą nieco wyginać reguły, ale wydają się praktyczne.

Ten program generuje spakowane dane:

message="""
 _     _                            _______                           _
| |   | |                          (_______)          _              | |
| |__ | | ____ ____  ____  _   _    _____   ____  ___| |_  ____  ____| |
|  __)| |/ _  |  _ \|  _ \| | | |  |  ___) / _  |/___)  _)/ _  )/ ___)_|
| |   | ( ( | | | | | | | | |_| |  | |____( ( | |___ | |_( (/ /| |    _
|_|   |_|\_||_| ||_/| ||_/ \__  |  |_______)_||_(___/ \___)____)_|   |_|
              |_|   |_|   (____/"""[1:]
size=len(message)
symbols="\n _|()\/"
i=0
encoded=""
while i<size:
    count=0
    while count<10 and i+count+1<size and message[i+count+1]==message[i]:
        count+=1
    n = symbols.find(message[i]) | count<<3
    encoded+=chr(n+40)
    i+=count+1
encoded_lines = encoded.replace("+)","!").split(chr(40))
for line in encoded_lines:
    print line+chr(40)
print len(encoded)
Chuck Morris
źródło
Witaj i witaj w PPCG! Wspaniały post!
NoOneIsHere
@NoOneWasLiterallyEverHereEver nigdy nie jest to ich pierwszy post ani nic, ale na pewno :)
kot
2

Python 2, 159 bajtów

To źródło zawiera znaki niedrukowalne, więc jest prezentowane jako zrzut heksadecymalny, który można dekodować xxd -r.

00000000: efbb bf70 7269 6e74 2278 017d 8fb5 7540  ...print"x.}..u@
00000010: 3114 c5fa 3f85 4abb f240 012d a2dd 432f  [email protected]/
00000020: 4cba c732 1302 20ff e0c0 dfc8 1501 e33f  L..2.. ........?
00000030: 580e 9b77 e40b d115 2911 aa23 1c33 05a7  X..w....)..#.3..
00000040: cf54 6ae4 74c7 7310 baa3 8310 c86d 8c27  .Tj.t.s......m.'
00000050: 04ea 6656 9c79 9bfb a5fb 6cdd f6fe b5c5  ..fV.y....l.....
00000060: a2ef 3182 4875 56a4 123d 770f 2702 902b  ..1.HuV..=w.'..+
00000070: 03b2 5bcb 28cf 985b 8520 876d b974 a6dc  ..[.(..[. .m.t..
00000080: be28 20bb f842 f6ee a57a 1e01 c1a2 733e  .( ..B...z....s>
00000090: 222e 6465 636f 6465 2827 7a69 7027 29    ".decode('zip')
Anders Kaseorg
źródło
2

Rakieta, 367 364 bajtów

(require file/gunzip net/base64)((λ(o)(gunzip-through-ports(open-input-bytes(base64-decode #"H4sIAOhN/lYAA31QwQ3EMAj7dwqezYuFInkRhj+MoWor9UBCmGBDMBhN8cMg+9dhR1hkovhhZwutO/FhSadQzqJQDdXkjsOYfa5Hkm4QEsp0ZeYkEdmeKK8i91GHazesgoyJEdfXzvR4O1ooOLY7oA8QunnfhDdCCSE2oogBV7QN7RhzI3bwYPWUUDXRj9fVpj439h/OlCKU1gEAAA=="))o)(displayln(get-output-string o)))(open-output-bytes))

Nie golfił

(require file/gunzip net/base64)
((λ (o)
   (gunzip-through-ports
    (open-input-bytes
     (base64-decode
      #"H4sIAOhN/lYAA31QwQ3EMAj7dwqezYuFInkRhj+MoWor9UBCmGBDMBhN8cMg+9dhR1hkovhhZwutO/FhSadQzqJQDdXkjsOYfa5Hkm4QEsp0ZeYkEdmeKK8i91GHazesgoyJEdfXzvR4O1ooOLY7oA8QunnfhDdCCSE2oogBV7QN7RhzI3bwYPWUUDXRj9fVpj439h/OlCKU1gEAAA=="))
    o)
   (displayln (get-output-string o)))
 (open-output-bytes))

Na podstawie podobnego wyzwania odpowiedziałem .

Winny
źródło
2

/// , 282 279 bajtów

Ulepszenie: Zauważyłem, że //poleceń zastępujących jest zbyt wiele , więc postanowiłem je również skompresować m, co pozwoliło mi zaoszczędzić 3 bajty.

/m/\/\///l/ _mk/|amj/b_mi/\\\m/h/|cmg/ddmf/ccme/bbmd/aamc/ |mb/__ma/  /ldlgggdejgggal 
hafggga(ej)ga_gdah
hbf e eaea_alde_a eajh_aeaeh
kb)hilak_ \\k_ \\|fcakj) ila|ij)a_)ila)i j)_|
hac ( (ffffc_hahe( (fjf_( (i ihd_ 
|_kc_|\\_||_h|_ih|_i \\bak|ej)_||_(ji \\j)e)_kc_|
gda|_kc_k (ei

Powtarzaj kompresję najczęściej podciąganego materiału.

Trzynasta generacja, 282 bajtów

/l/ _//k/|a//j/b_//i/\\\///h/|c//g/dd//f/cc//e/bb//d/aa//c/ |//b/__//a/  /ldlgggdejgggal 
hafggga(ej)ga_gdah
hbf e eaea_alde_a eajh_aeaeh
kb)hilak_ \\k_ \\|fcakj) ila|ij)a_)ila)i j)_|
hac ( (ffffc_hahe( (fjf_( (i ihd_ 
|_kc_|\\_||_h|_ih|_i \\bak|ej)_||_(ji \\j)e)_kc_|
gda|_kc_k (ei

Wypróbuj online!

Pierwsza generacja, 486 bajtów

Bez kompresji. Uciekł /i \.

 _     _                            _______                           _ 
| |   | |                          (_______)          _              | |
| |__ | | ____ ____  ____  _   _    _____   ____  ___| |_  ____  ____| |
|  __)| |\/ _  |  _ \\|  _ \\| | | |  |  ___) \/ _  |\/___)  _)\/ _  )\/ ___)_|
| |   | ( ( | | | | | | | | |_| |  | |____( ( | |___ | |_( (\/ \/| |    _ 
|_|   |_|\\_||_| ||_\/| ||_\/ \\__  |  |_______)_||_(___\/ \\___)____)_|   |_|
              |_|   |_|   (____\/

Wypróbuj online!

Druga generacja, 402 bajty

Skompresowano dwie spacje do a. Te /a/ /środki „zastąpić wszystkie wystąpienia adwóch przestrzeniach”.

/a/  / _aa _aaaaaaaaaaaaaa_______aaaaaaaaaaaaa _ 
| |a | |aaaaaaaaaaaaa(_______)aaaaa_aaaaaaa| |
| |__ | | ____ ____a____a_a _aa_____a ____a___| |_a____a____| |
|a__)| |\/ _a|a_ \\|a_ \\| | | |a|a___) \/ _a|\/___)a_)\/ _a)\/ ___)_|
| |a | ( ( | | | | | | | | |_| |a| |____( ( | |___ | |_( (\/ \/| |aa_ 
|_|a |_|\\_||_| ||_\/| ||_\/ \\__a|a|_______)_||_(___\/ \\___)____)_|a |_|
aaaaaaa|_|a |_|a (____\/

Wypróbuj online!

Trzecia generacja, 369 bajtów

Kompresowany __do b. Na /b/__/początku oznacza „zamień wszystkie wystąpienia bna __”.

/b/__//a/  / _aa _aaaaaaaaaaaaaabbb_aaaaaaaaaaaaa _ 
| |a | |aaaaaaaaaaaaa(bbb_)aaaaa_aaaaaaa| |
| |b | | bb bbabba_a _aabb_a bbab_| |_abbabb| |
|ab)| |\/ _a|a_ \\|a_ \\| | | |a|ab_) \/ _a|\/b_)a_)\/ _a)\/ b_)_|
| |a | ( ( | | | | | | | | |_| |a| |bb( ( | |b_ | |_( (\/ \/| |aa_ 
|_|a |_|\\_||_| ||_\/| ||_\/ \\ba|a|bbb_)_||_(b_\/ \\b_)bb)_|a |_|
aaaaaaa|_|a |_|a (bb\/

Wypróbuj online!

Czwarta generacja, 339 bajtów

Kompresowany |do c. Na /c/ |/początku oznacza „zamień wszystkie wystąpienia cna |”.

/c/ |//b/__//a/  / _aa _aaaaaaaaaaaaaabbb_aaaaaaaaaaaaa _ 
|caccaaaaaaaaaaaaa(bbb_)aaaaa_aaaaaaa|c
|cbcc bb bbabba_a _aabb_a bbab_|c_abbabb|c
|ab)|c\/ _a|a_ \\|a_ \\|ccca|ab_) \/ _a|\/b_)a_)\/ _a)\/ b_)_|
|cac ( (ccccccccc_|ca|cbb( (ccb_cc_( (\/ \/|caa_ 
|_|ac_|\\_||_|c|_\/|c|_\/ \\ba|a|bbb_)_||_(b_\/ \\b_)bb)_|ac_|
aaaaaaa|_|ac_|a (bb\/

Wypróbuj online!

Reszta reguł kompresji

Lista reguł kompresji:

  • Kompresuj dwa spacje do a.
  • Kompresuj __do b.
  • Kompresuj |do c.
  • Kompresuj aado d.
  • Kompresuj bbdo e.
  • Kompresuj ccdo f.
  • Kompresuj dddo g.
  • Kompresuj |cdo h.
  • Kompresuj \/do i. Zarówno zasady, jak \i /zasady są dalej unikane.
  • Kompresuj b_do j.
  • Kompresuj |ado k.
  • Kompresuj _do l.
  • Kompresuj //do m.

Jak widać, istnieją nakładające się reguły kompresji. Na przykład, gkoduje, ddktóry koduje, aaaaktóry koduje 8 spacji.

Leaky Nun
źródło
Jeśli chcesz brzmieć jak pijany, ale nie masz w zasięgu alkoholu, po prostu wypowiedz jeden z nich. udowodniono, że działa na rodziców
kot
2

Twoja mama (niekonkurująca), 331 bajtów

Dekoduj ciąg i rozpakuj go za pomocą kompresora Jelly

'IF8KfCgpL1z/AQAAAQAAAAAAAAAAAAAAAAAAEREREAAAAAAAAAAAAAAAAAAQIwMAAwMAAAAAAAAAAAAAAAAAQREREVAAAAAAAQAAAAAAAAAwMjAxEDAwEREBERABERABAAEAABEREAAREQAREwMQAREQARETAyMAEVMDYBADABBzABBzAwMDADABEVBgEANhEVABVgEAVgERUTIwMAAwQEAwMDAwMDAwMDEwMAMDERFAQDAxEQMDFARgYwMAABAjEwADE3EzEwMxYwMxYHEQAwAxERERUTMUERYHERUREVEwADEyAAAAAAAAADEwADEwAEERFg=='`
TuxCrafting
źródło
Jak konkurowałeś w mojej mamie?!?! Rejestracja zamknięta kilka miesięcy temu ...
Magic Octopus Urn
1

Python 3, 377 bajtów

from re import*;i=0
r=r'2_.7_./ .|2.| .4_.\\. _._d|.( (.3_). _ .2|_. |2 ._| |.a| |./ _2 .|3 |_. 4_2 . | |.\n'
e='an5n28 t27jf3b26 (t)10n14bfub pcp2n3n4 5_3c3g_2c4gar u)q|erjorjo|bhr k e|/k2n)e)sk_|f3 qlbbbb |g2bplb3_b_ls/q|4ja|mo_iqi/qisou2h|t)_i(3_sokp)ma14 |m3 (p/'
for j in r.split('.'):e=sub(chr(117-i),j,e);i+=1
print(sub('(\d+)(.)',lambda x:int(x.group(1))*x.group(2),e))

podobny do odpowiedzi w javascript, używał RLE plus kilka zamienników dla typowych podciągów.

Myślę, że trochę przesadziłem z wymianą rzeczy, prawdopodobnie nie pomogłem tak bardzo, ale no cóż.

mtp
źródło
1

JavaScript (ES6), 354 bajty

Kolejna próba. Niestety nie tak wydajna jak długość cyklu.

i=0,console.log(`1c1bt96zfx1!1n4ikabr1w5!1n4iut4kyue!krgqthnkpkem8!43tb4j2urme!8hwrsagny80!69dfowb7hvk!2xj89rpvcb2!23l14ken5i1!1xzn6ns7j78!1tzyivgb4h2!1yy885vts00!12du7km7f51!1lvpcyzgbfq!17nicizf8og0!1246xqebgb9!1n4j181hywz!`.replace(/\w+!/g,v=>parseInt(v,36).toString(4).replace(/./g,w=>"_ |"[w]||`
()

)/\\\\)//))/)/)
((((((//
\\//\\)(/\\))
(/`[i++])))

Przechowuje kilka liczb podstawowych 36 w pierwszym ciągu, oddzielonych !separatorem. Następnie zastępuje liczby (wraz z !) reprezentacjami liczb podstawowych 4. Zastępuje wszystkich znaków 0, 1-i 2 w liczbie baza-4 i _,  i |, odpowiednio, oraz wszystkie 3'S zastąpione elementami drugiego łańcucha sekwencyjnie.

jrich
źródło
1

Python 3, 263 bajty

Wstępne przejście przy użyciu wbudowanych funkcji.

from base64 import*
from zlib import*
print(decompress(a85decode(b"Gas1Y_%\"=:#lAfQT$<1I,'acT5E):N/+l.oQs`98(esP<+T'c!7p'"
b";rpgIeCXZQ&]8Z,D1U/2<LjGq-FIBH)'D@dH'FCjS[&_Wa(Y9N^<LMJiMJrGNuf@S=?GWT(W34:oA%hQ<"
b"thh3pT#pD4$L]LSa%IG!R,BiQaoor91d>uo0VEQs4+2O[m4o")).decode())

dodano kilka dodatkowych cytatów i podziałów wierszy, aby uniknąć przewijania w poziomie tylko w celach wyświetlania (nie liczone w wyniku)

Nick T.
źródło
6
Nie martw się o przewijanie w poziomie. Po prostu skopiuj-wklej tekst tak, jak jest, ponieważ to nas interesuje.
El'endia Starman
Wiem, po prostu wolę tego unikać. Również może nie robić ładnych zrzutów heksadecymalnych.
Nick T
Możesz spróbować zapisać dane zlib w ciągu. Uciekniesz przed niektórymi postaciami, ale prawdopodobnie jest on znacznie krótszy. Zobacz tę odpowiedź jako odniesienie.
agtoever
@agtoever the repr()surowego łańcucha był znacznie dłuższy niż ascii85
Nick T
4
@NickT Usuń dodatkowe cytaty i białe znaki. Twój kod powinien być taki, abyśmy mogli skopiować / wkleić go do licznika bajtów i uzyskać ten sam wynik. Dzięki. Jeśli chcesz ładną, możliwą do wyświetlenia wersję, opublikuj wersję bez gry w golfa.
mbomb007
1

CJam, 229

"3WPPEFXvN'vlFBse/cTD>.x:Na,Y&NJH^tZ%xL(NkYzo0Rq%BeV&Zl1T^2y69,W/QC4pL`nv<Jo$'Cq.'m2-3H#9teHi&<uyO>f V)D\E y'*]oGq*ODjQLyoS*GyM7;\Z.n6B;J@OyEaE!4'E5p5MOl^#[,ZtA;`jy,gTP^\;;i<A6^:k1%"' fm91b31b"}*+{~'NHIF\JLM
OGQK)(P/RST|_- \""f=~

Brak funky i brak wbudowanej kompresji :)

Wypróbuj online

aditsu zrezygnowało, ponieważ SE jest ZŁEM
źródło
1

Lua, 353 bajtów

Program:

a=(" _ 5_ 28_7 27_\n|~ 2~2 26(_7) 10_ 13~2\n|~_2~2 _4 _4 2_4 2_ 3_ 4_5 3_4 2_3|~_ 2_4 2_4|~\n| 2_2)|~/ _ ~ 2_ \\| 2_ \\|~3 ~ 2_3) / _ ~/_3) 2_)/ _ 2)/ _3)_|\n|~ 2~ ( (~9_|~ ~2_4( (~2_3~2_( (/ /|~ 4_\n|_| 2~_|\\_|2_|~|_/|~|_/ \\_2 ~ ~_7)_|2_(_3/ \\_3)_4)_| 2~_|\n 13~_| 2~_| 3(_4/"):gsub("(.)(%d+)",function(a,b)return a:rep(b)end):gsub("~"," |")print(a)

Dzięki @jrich za kompresję.

Leaky Nun
źródło
1

Rubinowy, 271 262 248 bajtów

require'zlib'
require'base64'
puts Zlib.inflate Base64.decode64'eJx1UMENxDAI+zMFz+bFQpG8CMMX46DeVWpQrJjYhGDp6e7Cj3VBaz0p/CvKbrWBLkStYHAcEH8uafqhUKE6rjoFTWS+BxWdZD9ShHrDakosju6oe7sq8h04hZLPHgX0AdLwODOBG8VOy0a2MRFC31CPOTOiggPrq6LKyW6vqU1+Zhx2A7NMZ9I'

Wypróbuj tutaj

NARKOZ
źródło
1

Vim , 374 365 326 319 313 311 klawiszy

9 naciśnięć klawiszy dzięki @Dr Green Eggs i Ham DJ .

:im @ ___<CR>
:im % _|<CR>
a _## _<esc>28a <esc>yl7a_<esc>27pa_ <CR>
|!#!!<esc>26pa(<esc>7a_<esc>a)<esc>10pa_<esc>14pa|!<CR>
|!__!!<esc>3a @_<esc>bi <esc>A#_# _##@__# @_#@|!_#@_#@%!<CR>
|#__)|!/ _ !#_ \|#_ \<esc>4a| <esc>a!#@) / _ !/@)#_)/ _#)/ @)%<CR>
|!#! ( (<esc>9a!<esc>a%! !!@_( (!!@!!_( (/ /|!##_ <CR>
|%#!%\%|_<esc>2a|!|_/<esc>a \__ ! !<esc>7a_<esc>a)%|_(@/ \@)@_)%#!%<CR>
<esc>14pa|%#!%# (@_/<esc>
:%s/!/ |/g<CR>
:%s/#/  /g<CR>

Prawdopodobnie można grać w golfa za pomocą :nn?

Leaky Nun
źródło
Oto kilka krótkich wskazówek po jednym spojrzeniu. 1. Robisz <number>a <esc>dużo. Jeśli robisz ylna spacji, możesz to zastąpić <number>p. To powinno zaoszczędzić około 8. 2. Można zastąpić eaz A. Prawdopodobnie możesz wziąć jeszcze więcej, jeśli zmienisz swoje podejście, ale to są szybkie porady, które widzę.
James
@DrGreenEggsandHamDJ Czy jest jakiś sposób, że mogę zmapować jednym naciśnięciem klawisza do pisania _i |etc?
Leaky Nun
Jestem przy telefonie, więc nie mogę tego przetestować, ale myślę, że to nieprawda. :szastępuje tylko w jednej linii. Chcesz :% s. Możesz także zapisać niektóre naciśnięcia klawiszy, wykonując :im(imap) zamiast wyszukiwania i zamiany. (Może być konieczne użycie ctrl-v lub ctrl-q do mapowania do spacji)
James
@DrGreenEggsandHamDJ Doskonałe, ale przypuszczam, że przy użyciu :imgolfa może być jeszcze tylko kilka bajtów.
Leaky Nun
1

JavaScript (ES6) 464 352 bajty

00000000  63 6f 6e 73 6f 6c 65 2e  6c 6f 67 28 60 08 09 28  |console.log(`..(|
00000010  09 c3 a0 39 c3 98 09 08  0f 0c 08 0c 18 0c 08 0c  |...9............|
00000020  c3 90 0a 39 0e 50 09 70  0c 08 0c 0f 0c 08 0c 11  |...9.P.p........|
00000030  08 0c 08 0c 08 21 08 21  10 21 10 09 18 09 20 29  |.....!.!.!.... )|
00000040  18 21 10 19 0c 08 0c 09  10 21 10 21 0c 08 0c 0f  |.!.......!.!....|
00000050  0c 10 11 0e 0c 08 0c 0a  08 09 10 0c 10 09 08 0c  |................|
00000060  10 09 08 0c 08 0c 08 0c  08 0c 10 0c 10 19 0e 08  |................|
00000070  0a 08 09 10 0c 0a 19 0e  10 09 0e 0a 08 09 10 0e  |................|
00000080  0a 08 19 0e 09 0c 0f 0c  08 0c 18 0c 08 0a 08 0a  |................|
00000090  08 0c 08 0c 08 0c 08 0c  08 0c 08 0c 08 0c 08 0c  |................|
000000a0  08 0c 09 0c 08 0c 10 0c  08 0c 21 0a 08 0a 08 0c  |..........!.....|
000000b0  08 0c 19 08 0c 08 0c 09  0a 08 0a 08 0a 0c 08 0c  |................|
000000c0  20 09 08 0f 0c 09 0c 18  0c 09 0c 09 14 09 0c 08  | ...............|
000000d0  14 09 0a 0c 08 14 09 0a  08 11 10 0c 10 0c 39 0e  |..............9.|
000000e0  09 14 09 0a 19 0a 08 19  0e 21 0e 09 0c 18 0c 09  |.........!......|
000000f0  0c 0f 70 0c 09 0c 18 0c  09 0c 18 0a 21 60 2e 73  |..p.........!`.s|
00000100  70 6c 69 74 28 22 22 29  2e 6d 61 70 28 61 3d 3e  |plit("").map(a=>|
00000110  61 2e 63 68 61 72 43 6f  64 65 41 74 28 29 29 2e  |a.charCodeAt()).|
00000120  6d 61 70 28 61 3d 3e 41  72 72 61 79 28 28 61 3e  |map(a=>Array((a>|
00000130  3e 33 29 2b 31 29 2e 6a  6f 69 6e 28 22 20 5f 2f  |>3)+1).join(" _/|
00000140  5c 5c 7c 28 29 5c 6e 22  2e 73 70 6c 69 74 28 22  |\\|()\n".split("|
00000150  22 29 5b 61 26 37 5d 29  29 2e 6a 6f 69 6e 28 22  |")[a&7])).join("|
00000160  22 29 29                                          |"))|

Wypróbuj tutaj!


źródło
1

HTML, 482 481 475 bajtów

<pre> _     _                            _______                           _ 
| |   | |                          (_______)          _              | |
| |__ | | ____ ____  ____  _   _    _____   ____  ___| |_  ____  ____| |
|  __)| |/ _  |  _ \|  _ \| | | |  |  ___) / _  |/___)  _)/ _  )/ ___)_|
| |   | ( ( | | | | | | | | |_| |  | |____( ( | |___ | |_( (/ /| |    _ 
|_|   |_|\_||_| ||_/| ||_/ \__  |  |_______)_||_(___/ \___)____)_|   |_|
              |_|   |_|   (____/

użytkownik8397947
źródło
Uwaga: Nie można po prostu prawidłowo wyświetlić tej rzeczy na telefonie.
user8397947,
Ponieważ robisz to wszystko i tak, nie potrzebujesz zamykającego tagu wstępnego
Optimizer
A dlaczego masz spacje na 5. linii? : P
Optymalizator
1

05AB1E , 171 bajtów

"_ |0/)(
\"•1æÆ&¢ÙDÿœƒ˜¶f
¹∍[saÎΛÞÀθ¶\‚e–8(¬šôon&{wαλµ.cRŽ1ºWèíÄʒΣ ι.ì¨Gt‰?WиΛÆ—©UãšW#тÊ÷´¥b™¢,V§¯l€éàøjòÐø¬ëäÇ kĀT¬Àн4p«ªÒdαñáyÛƦ‚@ø‘Ñ‚иu₅₂Qp>øî÷^‡иÓ7¯ÓÇŠ@ÄéS•9вèJ0…   :

Wypróbuj online.

Wyjaśnienie:

"_ |0/)(
\"            "# Push string "_ |0/)(\n\"
  1æÆ&¢ÙDÿœƒ˜¶f
  ¹∍[saÎΛÞÀθ¶\‚e8(¬šôon&{wαλµ.cRŽ1ºWèíÄʒΣ ι.ì¨Gt‰?WиΛÆ—©UãšW#тÊ÷´¥b™¢,V§¯l€éàøjòÐø¬ëäÇ kĀT¬Àн4p«ªÒdαñáyÛƦ‚@ø‘Ñ‚иu₅₂Qp>øî÷^‡иÓ7¯ÓÇŠ@ÄéS•
               # Push compressed integer 1097503083536947704653792841425892054204805659502021445044262296065039856679486956980779201344195600186307613120325421519873972685660197036332437042797892085831181080642513349371962439499848029872306826792254102689695782393365417312419084231420872539225014767457254170199022042856591776594745757160095950475758150232076499909206475280246564765470414367938
   9в          # Converted to Base-8 as list: [1,0,3,1,1,0,3,3,3,3,3,3,3,3,3,1,0,0,0,0,0,0,0,3,3,3,3,3,3,3,3,3,0,7,2,1,2,3,2,1,2,3,3,3,3,3,3,3,3,1,1,6,0,0,0,0,0,0,0,5,3,3,3,1,0,3,3,3,3,1,1,2,1,2,7,2,1,2,0,0,1,2,1,2,1,0,0,0,0,1,0,0,0,0,1,1,0,0,0,0,1,1,0,3,0,3,1,0,0,0,0,0,3,0,0,0,0,1,1,0,0,0,2,1,2,0,1,1,0,0,0,0,1,1,0,0,0,0,2,1,2,7,2,1,1,0,0,5,2,1,2,4,1,0,1,1,2,1,1,0,1,8,2,1,1,0,1,8,2,1,2,1,2,1,2,1,1,2,1,1,0,0,0,5,1,4,1,0,1,1,2,4,0,0,0,5,1,1,0,5,4,1,0,1,1,5,4,1,0,0,0,5,0,2,7,2,1,2,3,2,1,6,1,6,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,0,2,1,2,1,1,2,1,2,0,0,0,0,6,1,6,1,2,1,2,0,0,0,1,2,1,2,0,6,1,6,4,1,4,2,1,2,3,1,0,7,2,0,2,3,2,0,2,8,0,2,2,0,2,1,2,2,0,4,2,1,2,2,0,4,1,8,0,0,1,1,2,1,1,2,0,0,0,0,0,0,0,5,0,2,2,0,6,0,0,0,4,1,8,0,0,0,5,0,0,0,0,5,0,2,3,2,0,2,7,3,3,3,3,1,1,2,0,2,3,2,0,2,3,6,0,0,0,0,4]
     è         # Index each into the string
      J        # Join all characters together to a single string
       0   :  # Replace all "0" with "   " (3 spaces)
               # (and output the string implicitly as result)

Zobacz moją wskazówkę 05AB1E (rozdział Jak kompresować duże liczby całkowite? I Jak kompresować listy liczb całkowitych? ), Aby zrozumieć, jak działają skompresowane liczby całkowite i lista Base-8.

Kevin Cruijssen
źródło
Pokonam cię;).
Magic Octopus Urn
1
Nieważne, nie, nie jestem +1.
Magic Octopus Urn,
@MagicOctopusUrn: D
Kevin Cruijssen
1

C (gcc) , 280 279 bajtów

f(i){for(char*A=" _|/\\()\n",*s="H@@H.@#IA-@AWP@PP-@M#IF$@H'@BzBJABBIIHIAHIAH@H@@IIA@II@IQPAHIAHIQPW@IVPCAP@AT@AT#P@BHIFCAPKIFH^H@^HINzBB@BEE(BJBBPPIIEEBJIPPihCSP@@AWQ@PQLRQPJSPJCLAP@J#INRiIY`IqIINB@Jz'@JB@JB@MIY";i=*s>63?:*s++;s++)for(;i--&31;)printf("%c%c",A[*s&7],A[*s/8&7]);}

Wypróbuj online!

Zniszczony

Definiujemy alfabet składający się z 8 symboli " _|/\\()\n"i kompresujemy dane, pakując dwa symbole na bajt zgodnie z jego indeksem w alfabecie, z pierwszym symbolem w bitach 0..2, a drugim w 3..5. Bit 6 jest ustawiony tak, aby wynikowy bajt znalazł się na terytorium ASCII do wydruku. Następnie na skompresowanym łańcuchu uruchamiany jest prosty RLE. Jeśli symbol w ciągu występuje więcej niż dwa razy z rzędu, jest on przechowywany jako para znaków, przy czym pierwszy zawiera długość przebiegu plus 32 (zestaw bitów 5), a drugi sam symbol.

f(i){                                               i is run-length; not actually passed to f()
    for(                                            Loop over compressed string.
        char*A=" _|/\\()\n",                        Alphabet
        *s="...";                                   Compressed string.
        i=*s>63?:*s++;                             If char is outside symbol range, use as run-length and skip to next. Stop on EOS.
        s++)                                        Advance to next char.
            for(;i--&31;)                           Repeat symbol pair per run-length.
                printf("%c%c",A[*s&7],A[*s/8&7]);   Extract symbols from character and print.
}

Wypróbuj online!

gastropner
źródło
@ceilingcat Hm. Nie można go przywołać bez funky. Mimo to trochę go poprawiłem i otrzymałem 279.
gastropner
0

JavaScript ES6, 314 bajtów

Zawiera niezadrukowane bajty. Używa czarnej magii JS do uruchomienia. Jeśli console.log()jest potrzebna, aby odpowiedź była poprawna, liczba bajtów wyniesie 327.

[...`Ãm°Ûm¶Ûm¶Ûm¶Û\`��m¶Ûm¶Ûm¶Ûm�ç�±Çm¶Ûm¶Ûm¶Ûh���¶Ûm°Ûm¶Ûm�<â�8à�À�°�l6Ãm��m��\`�Äl����Ç��§��Ça�ØfqÇ��À�����»
°Ú¬� ó�Øé¦8ã�8ã� ã±Ä�&�â�Ç�4Y�vØnAÛ�X$�HG��\`lv �� ���0��
�Ø�öÛm¶Ûb�Ø�¶���`].map(a=>'0'.repeat(8-(z=a.charCodeAt().toString(2)).length)+z).join``.replace(/.{1,3}/g,a=>`_|/\\()
`[parseInt(a,2)]).slice(0,-2)

To był ogromny ból, aby dobrze się postarać i nie mogłem się pozbyć .slice(0,-2):( Zedytuję
jutro w wyjaśnieniu, kiedy będę mniej zmęczony.

Zastąpił każdy bajt odpowiednią wartością szesnastkową, aby fragment kodu mógł być uruchomiony

f=_=>
[...`\xc3\x6d\xb0\xdb\x6d\xb6\xdb\x6d\xb6\xdb\x6d\xb6\xdb\x60\x00\x00\x6d\xb6\xdb\x6d\xb6\xdb\x6d\xb6\xdb\x6d\x86\xe7\x1d\xb1\xc7\x6d\xb6\xdb\x6d\xb6\xdb\x6d\xb6\xdb\x68\x00\x00\x0b\xb6\xdb\x6d\xb0\xdb\x6d\xb6\xdb\x6d\x8e\x3c\xe2\x06\x38\xe0\x00\xc0\x01\xb0\x00\x6c\x36\xc3\x6d\x80\x00\x6d\x80\x03\x60\x01\xc4\x6c\x00\x1b\x00\x01\xc7\x9d\x80\xa7\x15\x86\xc7\x61\x99\xd8\x66\x71\xc7\x1d\x8e\xc0\x0b\x96\x1b\x14\x00\xbb\x0a\xb0\xda\xac\x00\xa0\xf3\x8e\xd8\xe9\xa6\x38\xe3\x8e\x38\xe3\x8e\x20\xe3\xb1\xc4\x00\x26\x98\xe2\x00\xc7\x11\x34\x59\x1c\x76\xd8\x6e\x41\xdb\x10\x58\x24\x1c\x48\x47\x12\x16\x60\x6c\x76\x20\x00\x00\xa0\x91\x00\x0b\x30\x05\x00\x0a\x0e\xd8\x83\xf6\xdb\x6d\xb6\xdb\x62\x0e\xd8\x83\xb6\x80\x00\x80`].map(a=>'0'.repeat(8-(z=a.charCodeAt().toString(2)).length)+z).join``.replace(/.{1,3}/g,a=>`_|/\\() 
`[parseInt(a,2)]).slice(0,-2)

a.innerHTML=f()
<pre id=a>

Bassdrop Cumberwubwubwub
źródło
2
Jak to działa?
Oliver Ni
0

JavaScript, 294 292 bajtów

_='_&3,,& *.,,&_ 7+&+,,-(*.)&&& _,-+7+__1 . .-.3&_& ._&.-*+_-.-.+7|3_)+2_43 b|3 \\+14-*) 2_4/*)3)2_-)2*)_|7+&| 51111 6+-+.51*1_52/+& _ 7|0\\_|6+6/+62\\__44*.)_|6(*2\\*).)07,40&(./,&&&&0_|&6|&- .*_*___1 ++| |3-_4-|- 2/ 5( (6|_7\n';for(Y in $='7652-43+1*.&0,')with(_.split($[Y]))_=join(pop());_

To ... jest dosłownie tylko kodowaniem sztuki ... z tym ...

Jeśli console.log()jest to wymagane, liczba bajtów wynosi 307 305 bajtów.

294-> 292, -2B do kodowania \ndo 7.

Naruyoko
źródło