"हैप्पी ईस्टर!"


11

आपका कार्य निम्नलिखित ASCII कला को प्रिंट करना है:

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

याद रखें, यह , इसलिए सबसे कम मात्रा में बाइट्स जीतता है। सौभाग्य।


2
@FryAmTheEggman यह माना जाता है कि डुप्लिकेट रिक्रॉल से काफी अलग है। केवल कुछ प्रतीकों का उपयोग किया जाता है: |()/\_जो पूरी तरह से संपीड़न के विभिन्न रूपों की ओर जाता है। हम पहले भी ASCII कला की चुनौतियों का सामना कर चुके हैं, लेकिन मैं यह देखना चाहता हूं कि अगर कोई ज्यामिति का लाभ उठाता है तो यह प्रश्न देखना चाहता है। दूसरी ओर यह बेहद उल्लेखनीय नहीं है, और सही है, हमें ईस्टर टैग की आवश्यकता नहीं है।
लेवल रिवर सेंट

1
@FryAmTheEggman कोल्मोगोरोव-जटिलता का सबसे अच्छा समाधान आउटपुट की संरचना पर बहुत निर्भर करता है । यह पाठ नहीं है, इसलिए यह एक द्वैध नहीं है।
lirtosiast

7
@lirtosiast सीमित चरित्र सेट मायने रखता है, लेकिन मुझे लगता है कि यह लगभग निश्चित रूप से एक ही तकनीक के प्रभुत्व होगा जैसे कि पाठ प्रश्न। यह सिर्फ मेरी राय है, हालांकि, समुदाय को यह तय करना है कि हमारे विचारों में से कौन सा लागू करना है, आखिरकार।
FryAmTheEggman


1
यह अलग है, क्योंकि कोई इनपुट नहीं है, और इसलिए इनपुट लेना और उसका विश्लेषण करना आवश्यक नहीं है।
thepiercingarrow

जवाबों:


10

बबलगम, 130 बाइट्स

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.

इसे ऑनलाइन आज़माएं।

का उपयोग कर संकुचित zopfli --deflate --i10000


क्या यह 588 बाइट्स नहीं है?
thepiercingarrow

15
@MarkWart क्या पोस्ट किया गया वास्तविक कोड का एक हेक्सडंप है
Sp3000

10

जावास्क्रिप्ट (ईएस 6), 377 373 360 359 345 बाइट्स

एक बाइट बचत के लिए @ नील और दूसरे 14 के लिए @ edc65 के लिए धन्यवाद!

मुझे लगा कि मैं इसे एक शॉट दूंगा। पाठ में सामान्य दोहराए जाने वाले पैटर्न को संपीड़ित करता है।

_____ (5 अंडरस्कोर) के रूप में संग्रहीत किया जाता है _5

      (5 रिक्त स्थान) के रूप में संग्रहीत किया जाता है  5

 | | | | |(  |पैटर्न के 5 ) के रूप में संग्रहीत किया जाता है~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,' |'))

ES6 पर ध्यान दें =>
कैलकुलेटरफाइनल

बाइट्स की तरह लगता है RLEing _s द्वारा बचाया जा सकता है ।
कैलकुलेटरफ्लीन

@CatsAreFluffy तुम क्या मतलब है? इसके बाद रन के _साथ कंप्रेस होता _है कि कितने रन में हैं
जिक्र

उफ़, मैं अभी भी 377 बाइट संस्करण पर था।
कैलक्यूलेटरफिलीन

~1या _2शायद ही इसके लायक लगता है। ( |2उदाहरण के लिए उपयोग क्यों नहीं ?)
नील

8

बाइनरीफक , 565 378 बाइट्स

यह मूल रूप से सरणी में उपयोग किए गए वर्णों को संग्रहीत करता है, फिर सरणी के माध्यम से नेविगेट करता है, उन्हें तदनुसार मुद्रित करता है। वर्तमान में काफी लंबा है, इसे छोटा कर देंगे।

1000010000000000000000110011110001010010000011011111010010110001011011000000010010111011001111011110010010010000010000010000000000000010000010000000000010000010000000000011011011011011011011011011001111010010000000000110001010000000000000000010000000000011011111010010001010001001001001010010001010000000000000000000000000000010001001001001010000000000000000000000000000000011011011011100010100011100100100100100010100011100100100100100100100100100100100100100100100100100100100100100100100100100100100100010100100100100100100100011100100100100100100100100100100100100100100100100100100100100100100100100100100100010100011100010010010010100011011011011011100010100011100010100100100011100010100011100010100100100100100100100100100100100100100100100100100100100100100100100100100100011011100010010010100100100100100100100010100011011100100100100100100100100100100010100011100100100100100100100100100100100100100100011100010100011100010010010010010100011011011011011100010100011100010010100100011100011100010100011100010100010100100100100011100010100100100100011100100010100100100100011100100010100011100100100010100011100100100100010100100100100100011100100100010100100100100011100100010100100100011011100010100011100010010100011100100010100100100100011100100010100100100100011011100010100011100010010010010010100011011011011011100010100100010100100010100011011011100010100011100011011100010010010100010100011100100011100010100100010100011100010010010100011011011011100010100100010100011100010010010100011011011011100010100011100010100011100010100011100010100100011100010100100010100100100010100011011100011011011100010010010100010100011100100011100011011100010010010010100100100010100011011100100010100010100011011011011011100010010010100010100011100100010010100011011011011011100010010010100010100100100010100011100011011100010010010010010100011011011011011100010100011100010100100100011100010100011011100010010100011011100010010100011100010100011100010100011100010100011100010100011100010100011100010100011100010100011100010100011100010010100011011100010100011100010100100011100010100011100010010100100100100011011011100010010100011011100010010100011100010100011100010010100100100011100011100010100011100010010100011011011100010010100011011100011100010010010100011011011100010010100010100011100010100100100100010100011100010010010010100011011011011011100010010100011011100010100100100011100010010100011011100010010010010100011011100011011100100010010100011011100010100011100100010010100011011011011100010010100010100011100100010010100011011011011100010010010100010010010100011011100100011100100011100010100100011100010010100100100100100100100010100011100011011100100010010100011011011100010010010100100100011011011011100010010010100010010010100011011100100100010100011100100100100010100011100011011100010100100100011100010010100011011100010010010010010100011011011011100100100100100100100100100100100100100100011100010010100011011100010100100100011100010010100011011100010100100100011011100010010010100100100100011011011011100

यहाँ अ-कोडित कोड है:

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

EDIT: कक्षों में वर्णों के क्रम को पुनर्व्यवस्थित करके, मैंने 186 बाइट्स बचाए!


8
यह नहीं है कि एक बाइट गिनती कैसे काम करती है। यदि आप दुभाषिया को बाइट्स का सटीक अनुक्रम नहीं दे सकते हैं, तो आप उस बाइट की संख्या को अपनी बाइट की संख्या के रूप में दावा नहीं कर सकते।
दरवाज़े

1
अगर वहाँ है एक बीएफ-दुभाषिया जो 3-बिट / चार में ले जाता है। यदि आप 565 बाइट्स का दावा करना चाहते हैं, तो कृपया दुभाषिया कोड के दुभाषिया और हेक्सडंप / पास्टबिन के लिए एक लिंक जोड़ें।
डाउनगेट

2
हां, 3-बिट ब्रेनफैक दुभाषिया है । अपने कोड के हेक्सडंप / बाइनरी प्रतिनिधित्व के साथ अपने उत्तर में इसके लिए एक लिंक जोड़ें। अब भाषा ब्रेनफैक नहीं होगी इसलिए आपको हेडर में "कॉम्प्रेस्डफक" निर्दिष्ट करना होगा। मैं यह सलाह देता हूं कि जब भी दिमागी रूप से लोग इसे बहुत कम होने की उम्मीद करते हैं, तब इसे रखने की सलाह दें।
डाउनगेट

1
यह एक मान्य बाइनरीफक प्रोग्राम की तरह नहीं दिखता है; यह एक के साथ शुरू नहीं करता है 1। कृपया एक दुभाषिया और स्रोत कोड के हेक्सडंप को एक लिंक प्रदान करें ताकि आपके परिणामों को पुन: प्रस्तुत किया जा सके।
डेनिस

2
यदि आप बाइनरीफक के अनुसार निर्देश के अनुसार 3 बिट्स का दावा करने जा रहे हैं, तो आपको बाइनरीफक स्रोत कोड (शायद एक हेक्स डंप या बेस 64-एन्कोडेड) में पोस्ट करना होगा और बाइट्स की गणना करना होगा। जैसा कि यह खड़ा है, यह सबमिशन 1012 बाइट्स के साथ एक ब्रेनफक सबमिशन है, जिसमें से 3 एक्सट्रॉनिक (नईलाइन) हैं।
Mego

6

जावास्क्रिप्ट (ईएस 6), 380 बाइट्स

पूर्णता के लिए यह एक अलग संपीड़न विधि का उपयोग करने का मेरा प्रयास है, हालांकि जैसा कि यह पता चलता है कि यह रनिंग एन्कोडिंग के रूप में कुशल नहीं है। प्रत्येक अंक निर्दिष्ट करता है कि अंतिम एन पहले से ही उत्पन्न वर्ण दोहराए गए हैं। इसके बाद अंक पहले से ही बार-बार वर्ण, जैसे दोहरा सकते हैं | 23में बदल जाता है | | |। मैं केवल यही चाहता हूं कि मैं तीन चरित्रों के एक रन को संकुचित कर सकूं।

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>


6

सी, 517 427 407 बाइट्स

  • कुछ बाइट्स को बचाया, @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 Try 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;
}

5

जावास्क्रिप्ट, 297 बाइट्स

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]))

दस सबसे सरल (जहाँ तक मैं बता सकता हूँ) की साधारण एन्कोडिंग। ओवरलैप्स के कारण वे क्रम में नहीं हैं; मेरे एनकोडर (नीचे) को उदाहरण '_ 'और ' _'पहले देखने की जरूरत है ' '

(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]

यह एन्कोड करने के लिए एक स्ट्रिंग और सबस्ट्रिंग की एक सरणी लेता है और रिटर्न करता है a) एन्कोडेड स्ट्रिंग b) संभावित अगली बचत की सूची c) बाइट्स की संख्या अब तक बचाई गई है।


5

S, 72 चार्ट / 209 बाइट्स

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

Try it here (Firefox only).

ठीक है, कम से कम चार गिनती महान है, लेकिन हम कस्टम कोड पेज का उपयोग नहीं कर सकते हैं। यह सिर्फ एक LZString- अपघटन है। मैं एक और समाधान पर भी काम कर रहा हूं - उस पर और बाद में।


5

पर्ल 5, 286 बाइट्स

perl -M5.01 happy.pl, कहाँ happy.plहै:

$_='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

डोम हेस्टिंग्स (यहां एक टिप्पणी में) के लिए धन्यवाद एक विचार के लिए जिसने मुझे दो बाइट्स बचाए और मेरा एक और विचार है जिसने मुझे और अधिक बचाया।


निश्चित रूप से आप के Lलिए आशुलिपि के रूप में उपयोग करना चाहिए |_;-)
नील

3

पायथन 2, 343 328 316 बाइट्स

यह समाधान बिना किसी अपघटन के कार्यों या अन्य आयातों का उपयोग करता है।

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

पठनीय संस्करण:

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

सेट से एक प्रतीक के लिए 3 बिट्स के साथ रन लंबाई एन्कोडिंग के एक संस्करण का उपयोग करता है "\ n _ | () /"। बाइट का शेष भाग लंबाई है, लेकिन मैंने लंबाई को 10 तक सीमित कर दिया है और इसमें हेरफेर किया है ताकि परिणाम प्रिंट करने योग्य वर्ण हो जो बिना किसी भागने के एक अजगर स्ट्रिंग में मान्य हैं।

एन्कोडेड डेटा में एकल वर्ण के साथ स्ट्रिंग को "|" के साथ प्रतिस्थापित करना कुछ बाइट्स को बचाता है।

मैंने लाइनों 1 और 5 पर अनुगामी रिक्त स्थान को हटा दिया, जो नियमों को थोड़ा झुका सकता है, लेकिन व्यावहारिक लगता है।

यह प्रोग्राम पैक्ड डेटा उत्पन्न करता है:

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)

नमस्कार, और PPCG में आपका स्वागत है! महान पद!
NoOneIsHere

@NoOneWasLiterallyEverHereEver नहीं है कि यह उनकी पहली पोस्ट या कुछ भी है, लेकिन यकीन है कि :)
बिल्ली

2

पायथन 2, 159 बाइट्स

इस स्रोत में गैर-मुद्रण योग्य वर्ण हैं, इसलिए इसे एक हेक्सडंप के रूप में प्रस्तुत किया जाता है जिसे इसके साथ डिकोड किया जा सकता है xxd -r

00000000: efbb bf70 7269 6e74 2278 017d 8fb5 7540  ...print"x.}..u@
00000010: 3114 c5fa 3f85 4abb f240 012d a2dd 432f  1...?.J..@.-..C/
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')

2

रैकेट, 367 364 बाइट्स

(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))

Ungolfed

(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))

एक समान चुनौती के आधार पर मैंने उत्तर दिया


2

/// , 282 279 बाइट्स

सुधार: मैंने देखा कि //प्रतिस्थापन कमांड में बहुत सारे हैं , इसलिए मैंने उन्हें (भी m) संपीड़ित करने का फैसला किया , जिससे मुझे 3 बाइट्स मिलीं।

/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

बार-बार सबसे लगातार घटने को संकुचित करें।

तेरहवीं पीढ़ी, 282 बाइट्स

/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

इसे ऑनलाइन आज़माएं!

पहली पीढ़ी, 486 बाइट्स

कोई संपीड़न नहीं। भाग निकले /और \

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

इसे ऑनलाइन आज़माएं!

दूसरी पीढ़ी, 402 बाइट्स

करने के लिए दो रिक्त स्थान संपीड़ित a/a/ /इसका मतलब है "की सभी घटनाओं की जगह aदो रिक्त स्थान के लिए"।

/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 (____\/

इसे ऑनलाइन आज़माएं!

तीसरी पीढ़ी, 369 बाइट्स

की तुलना __में b/b/__/शुरुआत साधन पर "की सभी घटनाओं की जगह bकरने के लिए __"।

/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\/

इसे ऑनलाइन आज़माएं!

चौथी पीढ़ी, 339 बाइट्स

की तुलना |में c/c/ |/शुरुआत साधन पर "की सभी घटनाओं की जगह cकरने के लिए |"।

/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\/

इसे ऑनलाइन आज़माएं!

बाकी संपीड़न नियम

तो, संपीड़न नियमों की सूची:

  • दो स्थानों को संपीड़ित करें a
  • के लिए संपीड़ित __करें b
  • के लिए संपीड़ित |करें c
  • के लिए संपीड़ित aaकरें d
  • के लिए संपीड़ित bbकरें e
  • के लिए संपीड़ित ccकरें f
  • के लिए संपीड़ित ddकरें g
  • के लिए संपीड़ित |cकरें h
  • के लिए संपीड़ित \/करें i। दोनों \और /नियमों में आगे भाग निकले कर रहे हैं।
  • के लिए संपीड़ित b_करें j
  • के लिए संपीड़ित |aकरें k
  • के लिए संपीड़ित _करें l
  • के लिए संपीड़ित //करें m

जैसा कि आप देख सकते हैं, अतिव्यापी संपीड़न नियम हैं। उदाहरण के लिए, gencodes ddजो encodes aaaaजो 8 रिक्त स्थान encodes।


यदि आप नशे में आवाज करना चाहते हैं, लेकिन इनमें से किसी एक का उच्चारण करने की कोशिश में शराब नहीं है। माता
बिल्ली

2

आपकी माँ (गैर-प्रतिस्पर्धी), 331 बाइट्स

स्ट्रिंग को डिकोड करें और जेली कंप्रेसर का उपयोग करके इसे डिकम्प्रेस करें

'IF8KfCgpL1z/AQAAAQAAAAAAAAAAAAAAAAAAEREREAAAAAAAAAAAAAAAAAAQIwMAAwMAAAAAAAAAAAAAAAAAQREREVAAAAAAAQAAAAAAAAAwMjAxEDAwEREBERABERABAAEAABEREAAREQAREwMQAREQARETAyMAEVMDYBADABBzABBzAwMDADABEVBgEANhEVABVgEAVgERUTIwMAAwQEAwMDAwMDAwMDEwMAMDERFAQDAxEQMDFARgYwMAABAjEwADE3EzEwMxYwMxYHEQAwAxERERUTMUERYHERUREVEwADEyAAAAAAAAADEwADEwAEERFg=='`

आपने मेरी माँ में प्रतिस्पर्धा कैसे की?!?! पंजीकरण बंद महीनों पहले ...
मैजिक ऑक्टोपस Urn

1

पायथन 3, 377 बाइट्स

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))

जावास्क्रिप्ट उत्तर के समान, RLE के साथ-साथ आम सबस्ट्रिंग के लिए प्रतिस्थापन का एक गुच्छा इस्तेमाल किया।

मुझे लगता है कि मैं जगह बदलने के सामान के साथ थोड़ा ऊपर चला गया, शायद इतना अच्छा नहीं था लेकिन ओह अच्छी तरह से।


1

जावास्क्रिप्ट (ईएस 6), 354 बाइट्स

एक और प्रयास। दुर्भाग्यवश रन लेंथ जितनी कुशल नहीं थी।

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++])))

पहले स्ट्रिंग में बेस -36 नंबरों का एक गुच्छा स्टोर करता है, जिसे एक !विभाजक द्वारा सीमांकित किया जाता है । फिर !संख्या के आधार -4 निरूपण के साथ (साथ ) संख्याओं को बदल देता है । के स्थान पर सभी 0 के, 1, और साथ आधार -4 संख्या में 2 की _,  और |क्रमशः, और सभी 3 के क्रमिक रूप से दूसरी स्ट्रिंग में तत्वों के साथ बदल दिया जाता है।


1

पायथन 3, 263 बाइट्स

बिलिंस का उपयोग कर प्रारंभिक पास।

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())

केवल प्रदर्शन प्रयोजनों के लिए क्षैतिज स्क्रॉल से बचने के लिए कुछ अतिरिक्त उद्धरण और लाइनब्रेक जोड़े गए हैं (स्कोर में नहीं गिना जाता)


6
क्षैतिज स्क्रॉल के बारे में चिंता न करें। बस टेक्स्ट को कॉपी-पेस्ट करें, जैसा कि हम में रुचि रखते हैं, क्योंकि
एल'एंडिया स्ट्रैटन

मुझे पता है, मैं इससे बचना पसंद करता हूं। साथ ही साथ हेक्स डंप भी नहीं कर सकते हैं।
निक टी

आप एक स्ट्रिंग में zlib डेटा संग्रहीत करने का प्रयास कर सकते हैं। आप कुछ पात्रों से बच निकलते हैं, लेकिन यह शायद बहुत छोटा है। इस उत्तर को संदर्भ के रूप में देखें ।
agtoever

@ repr()कच्चे तार की संख्या ascii85 से अधिक लंबी थी
निक टी

4
@NickT कृपया अतिरिक्त उद्धरण और व्हाट्सएप को हटा दें। आपका कोड ऐसा होना चाहिए कि हम इसे एक बाइट-काउंटर में कॉपी / पेस्ट कर सकें और समान परिणाम प्राप्त कर सकें। धन्यवाद। यदि आप एक अच्छा, प्रदर्शित करने योग्य संस्करण चाहते हैं, तो एक बिना गोल्फ वाला संस्करण पोस्ट करें।
mbomb007

1

सीजेम, 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=~

कोई कायरता वर्ण और कोई अंतर्निहित संपीड़न :)

इसे ऑनलाइन आज़माएं


1

लुआ, 353 बाइट्स

कार्यक्रम:

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)

संपीड़न के लिए @jrich के लिए धन्यवाद।


1

रूबी, 271 262 248 बाइट्स

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

इसे यहाँ आज़माएँ


1

विम , 374 365 326 319 313 311 कीस्ट्रोक्स

9 कीस्ट्रोक्स @Dr ग्रीन एग्स और हैम डीजे के लिए धन्यवाद ।

: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>

संभवत: उपयोग करके आगे गोल्फ किया जा सकता है :nn?


यहाँ एक नज़र में एक के बाद एक दो त्वरित सुझाव दिए गए हैं। 1. आप <number>a <esc>बहुत कुछ करते हैं। यदि आप ylकिसी स्थान पर करते हैं, तो आप इसे बदल सकते हैं <number>p। यह लगभग 8 बचा जाना चाहिए। 2. आप के eaसाथ बदल सकते हैं A। यदि आप अपना दृष्टिकोण बदलते हैं, तो आप शायद और भी अधिक ले सकते हैं, लेकिन वे त्वरित सुझाव हैं जो मैं देख रहा हूं।
जेम्स

@DrGreenEggsand HamDDJ क्या कोई ऐसा तरीका है जिससे मैं टाइपिंग _और |आदि के लिए एक सिंगल कीस्ट्रोक को मैप कर सकता हूं ?
लीक नन

मैं अपने फोन पर हूं, इसलिए मैं इसका परीक्षण नहीं कर सकता, लेकिन मुझे लगता है कि यह गलत है। :sकेवल एक पंक्ति पर प्रतिस्थापित करता है। आप चाहते हैं :% s। आप :imखोज और प्रतिस्थापित करने के बजाय ( करके ) कुछ कीस्ट्रोक्स भी बचा सकते हैं । (हालांकि आपको किसी स्थान पर जाने के लिए ctrl-v या ctrl-q का उपयोग करने की आवश्यकता हो सकती है)
जेम्स

@DrGreenEggsand HamDDJ उत्कृष्ट है, लेकिन :imकेवल कुछ और बाइट्स का उपयोग करके मैं मान सकता हूं।
लीक नून

1

जावास्क्रिप्ट (ES6) 464 352 बाइट्स

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                                          |"))|

यहाँ यह कोशिश करो!


1

HTML, 482 481 475 बाइट्स

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


ध्यान दें: एक फोन पर इस बात को ठीक से नहीं देखता है।
user8397947

चूँकि आप यह सब वैसे भी कर रहे हैं, आपको क्लोजिंग प्री टैग
ऑप्टिमाइज़र

और आपके पास 5 वीं पंक्ति में रिक्त स्थान क्यों हैं? : P
ऑप्टिमाइज़र

1

05AB1E , 171 बाइट्स

"_ |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…   :

इसे ऑनलाइन आज़माएं।

स्पष्टीकरण:

"_ |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)

मेरा यह 05AB1E टिप देखें ( संपीड़ित पूर्णांक और बेस -8 सूची काम करने के तरीके को समझने के लिए खंड ( बड़े पूर्णांक को संपीड़ित कैसे करें ? और पूर्णांक सूची कैसे संपीड़ित करें? )


आयमा ने तुम्हें हराया;)
मैजिक ऑक्टोपस Urn

1
कोई बात नहीं, मैं +1 नहीं हूं।
मैजिक ऑक्टोपस Urn


1

सी (जीसीसी) , 280 279 बाइट्स

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]);}

इसे ऑनलाइन आज़माएं!

मंद होना

हम 8 प्रतीकों की एक वर्णमाला को परिभाषित करते हैं " _|/\\()\n", और वर्णमाला में इसके सूचकांक के अनुसार प्रति बाइट में दो प्रतीकों को पैक करके डेटा को संपीड़ित करते हैं, बिट्स में पहला प्रतीक 0..2, और दूसरा 3..5 में। बिट 6 को परिणामी बाइट को मुद्रण योग्य ASCII क्षेत्र में लाने के लिए सेट किया गया है। एक साधारण RLE तब संपीड़ित स्ट्रिंग पर चलाया जाता है। यदि स्ट्रिंग में एक प्रतीक एक पंक्ति में दो बार से अधिक होता है, तो इसे एक चरित्र जोड़ी के रूप में संग्रहीत किया जाता है, जिसमें पहला रन-लेंथ 32 (बिट 5 सेट) और दूसरा प्रतीक स्वयं होता है।

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.
}

इसे ऑनलाइन आज़माएं!


@ceilingcat एचएम। कायरता आउटपुट के बिना याद नहीं किया जा सकता है। फिर भी, इसे थोड़ा मोड़ दिया और 279 भी मिला।
गैस्ट्रोपनर

0

जावास्क्रिप्ट ईएस 6, 314 बाइट्स

अनपेक्षित बाइट्स शामिल हैं। चलाने के लिए कुछ काले जेएस जादू का उपयोग करता है। यदि console.log()इस उत्तर को मान्य होने के लिए आवश्यक है, तो बाइट गिनती 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)

यह सही पाने के लिए एक बहुत बड़ा दर्द था, और मैं इससे छुटकारा पाने का प्रबंधन नहीं कर सका .slice(0,-2):(
कल एक स्पष्टीकरण में संपादित करूँगा जब मैं कम थक गया हूँ।

कोड स्निपेट चलाने में सक्षम होने के लिए प्रत्येक हेक्स बाइट को संबंधित हेक्स मान के साथ बदला गया

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>


2
यह कैसे काम करता है?
ओलिवर नी

0

जावास्क्रिप्ट, 294 292 बाइट्स

_='_&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());_

यह ... सचमुच कला का एन्कोडिंग है ... के साथ इस ...

यदि console.log()आवश्यक हो, तो बाइट गिनती 307 305 बाइट्स है।

294-> 292, -2 बी एन्कोडिंग के \nलिए 7

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.