জীবন, মহাবিশ্ব এবং ASCII- শিল্পের উত্তর


25

সাধারণ চ্যালেঞ্জ: নীচের পাঠ্যটিকে যতটা বাইটে আউটপুট করার চেষ্টা করুন:

       the        answer
      toli      fetheuniv
     ersea     nde     ver
    ything     the     ans
   wer tol     ife     the
  uni  ver           sean
 dev   ery         thin
gth    ean       swer
tolifetheuni    ver
seandeveryth   ing
       the     ans      wer
       tol     ifetheuniver
       sea     ndeverything

মূল অঙ্কনটিতে 332 টি অক্ষর রয়েছে।

বিধি

  • কোনও ইনপুট বা অব্যবহৃত ইনপুট নেই।
  • আউটপুট যে কোনও যুক্তিসঙ্গত বিন্যাসে হতে পারে (স্ট্রিং, স্ট্রিংগুলির তালিকা, অক্ষরের ম্যাট্রিক্স এবং অন্যান্য)।
  • আপনি যদি পছন্দ করেন তবে অঙ্কনের জন্য ছোট হাতের পরিবর্তে বড় হাতের অক্ষর ব্যবহার করতে পারেন।
  • স্পেস স্পেস এবং নতুন লাইনের অনুমতি রয়েছে Tra
  • এটি , তাই প্রতিটি ভাষার জন্য সংক্ষিপ্ততম প্রোগ্রাম / ফাংশন জিতে যেতে পারে!

নোট

  • এই একটি সম্ভাব্য প্রতিলিপির হিসেবে চিহ্নিত করা হয়েছে আমরা কোড গলফ কোন অপরিচিত, আপনি নিয়ম জানেন, এবং তাই আমি কি । এই প্রশ্নটি পাঠ্য সন্ধান এবং প্রতিস্থাপন সম্পর্কে ছিল। এখানে আপনাকে প্রদত্ত পাঠ্য ব্যবহার করে একটি আকৃতি আঁকতে হবে এবং বর্তমানের উত্তরগুলির মধ্যে কমপক্ষে দু'টি দেখায় যে গল্ফিংয়ের ভাষা এই ক্ষেত্রে প্লেইন সংক্ষেপণ অ্যালগরিদমকে পরাজিত করতে পারে।

এটি স্যান্ডবক্স থেকে আসে ।
চার্লি

1
ব্যক্তিগতভাবে, আমি মনে করি এটি অন টপিক এবং ডুপ নয়। যদিও আমি মনে করি না তবে আপনার কোনও স্পয়লার উদ্ধৃতি দরকার।
প্রোগ্রামার

1
@Phoenix আমি মনে করি না এই একটি প্রতারিত হয় না sogl outgolfed করেছে bubblegum । অতএব, সংক্ষেপণ এটি করার সর্বোত্তম উপায় নয়।
প্রোগ্রামার

1
সত্যি কথা বলতে কি আমি বুঝতে পারি নি যে আমার পুনর্নির্মাণের জন্য ভোট বাধ্যতামূলক ছিল। কারণ ইতিমধ্যে @ programmer5000 উল্লেখ জন্য, আমি সত্যিই মনে করি না এটি একটি প্রতারিত থাকা জিনিসের আমরা কোন অপরিচিত করছি ... । এটি অন্যের ধূপ হতে পারে - এখনও সনাক্ত করতে - চ্যালেঞ্জ জানাতে পারে তবে এটি এক নয়।
আর্নল্ড

1
শ্রেষ্ঠ অংশ @Nacht যে প্রথম আমি সৃষ্টি হয় 42সঙ্গে *অক্ষর, এবং তারপর তাদের পাঠ্য, যা পুরোপুরি মাপসই দিয়ে প্রতিস্থাপিত। বাক্যটি ফিট করার জন্য আমাকে মূল অঙ্কনটি সংশোধন করতে হয়নি। কাকতালীয়?
চার্লি

উত্তর:


21

পাইথন 3 , 224 220 219 215 211 194 বাইট

  • 1 টি বাইটের জন্য @ টিফিল্ডকে ধন্যবাদ : এর if(j%27<1)*jপরিবর্তে if j*(j%27<1)এবং সরলিকৃত মুদ্রণ বিবৃতি।
  • 4 বাইটের জন্য @ লিকি নুনকে ধন্যবাদ: 0 এবং 1 উল্টানো, জিরো দ্বারা প্যাডিংয়ের দরকার নেই 7*'0'
  • @ লাকি নন তার দুর্দান্ত গল্ফিং দক্ষতার সাথে 17 বাইট সংরক্ষণ করেছেন (অনেক ধন্যবাদ !!!!): মডিউলার ইনডেক্সিংয়ের দুর্দান্ত ব্যবহার
i=j=0
k=int("OHZE5WCKDTW6JYMO1JNROAAJQVAN6F8KEO0SMKJM86XIBMCEH5FXXONZGBAVCN3689DS",36)
while k:j+=1;print(k%2*'theanswertolifetheuniverseandeverything'[i%39]or' ',end='\n'*(j%27<1));i+=k%2;k//=2

এটি অনলাইন চেষ্টা করুন!

ব্যাখ্যা:

এই বাইনারি নম্বরটি সংকুচিত করতে বেস -৩ comp সংক্ষেপণ ব্যবহার করে (নতুন লাইন বাদে)

111111100011111111000000111
111111000011111100000000011
111110000011111000111110001
111100000011111000111110001
111000100011111000111110001
110001100011111111111000011
100011100011111111100001111
000111100011111110000111111
000000000000111100011111111
000000000000111000111111111
111111100011111000111111000
111111100011111000000000000
111111100011111000000000000

আমাদের মূলত দুটি কাউন্টার রয়েছে iএবং j। একটি মুখোমুখি হওয়ার সময় 1আমরা একটি স্থান মুদ্রণ করি; অন্যথায় যদি 0মুখোমুখি হয় তবে আমরা স্ট্রিং থেকে পরবর্তী চিঠিটি প্রিন্ট করি এবং বৃদ্ধি করি ijপ্রতিটি জন্য বৃদ্ধি 0 or 1। আমরা যখনই প্রয়োজন হয় নতুন লাইনগুলি প্রিন্ট করি যখন j%27<1সত্য হয়


1
আপনি পরিবর্তন করে 1 বাইট সংরক্ষণ করতে পারবেন if j*(j%27<1):করারif(j%27<1)*j:
TFeld


2
পূর্ণসংখ্যার গাণিতিক সহ 201 বাইটস
লিকি নুন

2
মডুলার ইনডেক্সিং সহ 200 বাইট
লিকি নুন


8

পাইথন 2 , 235 218 213 বাইট

x=bin(int('OC5POO6MZYQNBWY0RP6BKBZCOZL13MIAB6I8YZ5N7LXSZBVKX7GC57AW5631YCJ6XCLC',36))[2:].replace('1',' ')
for c in'theanswertolifetheuniverseandeverything'*4:x=x.replace('0',c,1)
while x:y,x=x[:27],x[27:];print y

এটি অনলাইন চেষ্টা করুন!

প্রশ্নটিতে ইঙ্গিত হিসাবে চিঠির অবস্থানগুলির 36 টি এনকোডড ইনট্রে একটি বেসে স্যুইচ করা হয়েছে।

প্রতিটি চরিত্রকে একবারে প্রতিস্থাপন করে।

       111        111111                              the        answer
      1111      111111111                            toli      fetheuniv
     11111     111     111                          ersea     nde     ver
    111111     111     111                         ything     the     ans
   111 111     111     111                        wer tol     ife     the
  111  111           1111                        uni  ver           sean
 111   111         1111             --->        dev   ery         thin
111    111       1111                          gth    ean       swer
111111111111    111                            tolifetheuni    ver
111111111111   111                             seandeveryth   ing
       111     111      111                           the     ans      wer
       111     111111111111                           tol     ifetheuniver
       111     111111111111                           sea     ndeverything

সম্পাদনা: মনে হচ্ছে আমার আগে অফিসিয়ালাইম বেস ৩ base ব্যবহার করা হয়েছে।


7

বুবলগাম , 125 বাইট

0000000: 45 8f c5 01 03 31 0c 04 ff ae 62 4b 0b 99 02 c7  E....1....bK....
0000010: d8 7d 84 e7 f9 59 30 5e 41 59 4a 84 71 ef e6 3d  .}...Y0^AYJ.q..=
0000020: 4e c1 ea fd b7 42 48 91 66 d6 ae 6e da 89 d3 1c  N....BH.f..n....
0000030: ef 60 ba 97 ae 6e b6 74 2e a5 76 d9 ad ae e4 16  .`...n.t..v.....
0000040: 69 59 08 a6 a6 e8 23 d4 22 af 08 d0 20 7d 17 f0  iY....#."... }..
0000050: 8a 9b 7c 76 c2 61 7b c8 4b 01 41 23 50 24 32 87  ..|v.a{.K.A#P$2.
0000060: f5 98 9e 88 35 24 21 83 ac 50 b2 e0 a2 16 0e 42  ....5$!..P.....B
0000070: bb ba a5 bc ae 6e bd 76 b7 69 d9 f9 07           .....n.v.i...

এটি অনলাইন চেষ্টা করুন!


আপনি এটি কীভাবে তৈরি করেছেন? সবচেয়ে
কাছেরটি

1
সঙ্গে zopfli
ডেনিস

আমি জোফফ্লি ব্যবহার করেছি, তবে শপথ করছি যে আমি নতুন স্পেসের সাথে এবং অতিরিক্ত স্থান ছাড়িয়ে ট্রেলিং ছাড়াই চেষ্টা করেছি .... 127 এর নিচে যেতে পারিনি
musicman523

6

05AB1E , 83 79 74 বাইট

-4 বাইটস এরিক দি আউটগলফারকে ধন্যবাদ

বাইট সংরক্ষণের জন্য স্ট্রিংগুলির একটি তালিকা আউটপুট করে।

•2ÖH₆Ôn₅Ò\ÊÑĆ¸Ý¾*£„ÔûC∞qΘœ™‚¹µ—₃₄fm•vNÈy×vyiðë¾¼’€€Ž»to‚쀀ªÜ€ƒ‰Ö’è}}}J27ô

এটি অনলাইন চেষ্টা করুন!

ব্যাখ্যা

2ÖH₆Ôn₅Ò\ÊÑĆ¸Ý¾*£„ÔûC∞qΘœ™‚¹µ—₃₄fm দশমিক সংখ্যার ভিত্তি 255:

73869469755353565353431353533323902433339443437469034389033390735363735903735903

যার রানে এনকোড 1s এবং 0যথাক্রমে গুলি, এমনকি সূচকের হচ্ছে 1s এবং অমসৃণ indeices 0গুলি। এটি বাইনারি সংখ্যাকে মূল্যায়ন করে:

111111100011111111000000111
111111000011111100000000011
111110000011111000111110001
111100000011111000111110001
111000100011111000111110001
110001100011111111111000011
100011100011111111100001111
000111100011111110000111111
000000000000111100011111111
000000000000111000111111111
111111100011111000111111000
111111100011111000000000000
111111100011111000000000000

কোড

•...•                                         Convert from base 255 to decimal
     v                                }       For each digit, do:
      NÈy×                                       is_even(index) repeated that many times
          v                          }           For each digit, do:
           yi                       }               If digit is truthy, then:
             ð                                         Push space
              ë                                     Else:
               ¾¼                                      Get and increment counter, starts at 0
                 ’€€Ž»to‚쀀ªÜ€ƒ‰Ö’                    Push "theanswertolifetheuniverseandeverything"
                                   è                   Get the character at that index
                                       J      Join whole stack
                                        27ô   Split into parts of 27

-4 এর "ÔAo îιË3š1ĆRÕ₃FWš{ÓÛÏ.!XµM§&¶ñD°3PŸ{óNι2Ðbмh"253öসাথে প্রতিস্থাপন করুন •—."Ôq‚Ā0Ál0j¿«ªžé¨0õ₄7“Ÿ!½ÏiæÆø-δq–Å05q½Yñá+•
এরিক আউটগল্ফার

@ এরিকথ আউটগল্ফার ধন্যবাদ, আমার উত্তর আপডেট করেছে এবং এখন অবশেষে আমি জানি :) এগুলি কী জন্য :)
কলসওয়ারাস

চমৎকার উত্তর :). আশা করি আপনি ভাষা শিখতে থাকবেন। আপনার যদি কোনও প্রশ্ন থাকে তবে নির্দ্বিধায় আমাকে চ্যাট করুন।
ম্যাজিক অক্টোপাস উর্ন

@ ম্যাজিক অ্যাক্টপাস ইউরন অনেক ধন্যবাদ! :)
kalsowerus

6

পাইথন 2 , 220 213 212 বাইট

-1 সুইচিং দ্বারা বাইট ()*4জন্য %39থেকে @officialaimm

s=""
w=l=i=0
for g in`int("352G7FS4XC8J2Q2M2HNK7IZI65Z9TVUMHOZ6MR3HY46RQBLWY4PR",36)`[:-1]:
	for j in g*int(g):l+=1;s+=[' ',"theanswertolifetheuniverseandeverything"[w%39]][i%2]+"\n"*(l%27<1);w+=i%2
	i+=1
print s

এটি অনলাইন চেষ্টা করুন!

এটি অন্যান্য পাইথন উত্তরগুলির থেকে পৃথক পদ্ধতি। আমি ইমেজটির পিএনজি-স্টাইলের আরএলই-স্টাইল এনকোডিংয়ের একটি হেক্স বেস -৩ 36 (সংরক্ষিত by বাইট) ব্যবহার করেছি (ধারাবাহিক পুনরাবৃত্তি পিক্সেলের সংখ্যার সাথে সংখ্যার একটি স্ট্রিং)।

অঙ্কগুলির স্ট্রিংটি হ'ল :

73869469755353565353431353533323902433339443437469034389033390735363735903735903

তারপরে আমি সেই অঙ্কগুলি পুনরাবৃত্তি করি এবং পর্যায়ক্রমে প্যালেট ('থানসওয়ার ...') থেকে সেই সংখ্যার 'গুলি বা অক্ষরগুলি মুদ্রণ করি। যখন কোনও 9 টিরও বেশি চরিত্র পুনরাবৃত্তি হয়, আমি কেবল 0 এবং তারপরে অবশিষ্টটি যুক্ত করব।


বিভিন্ন পদ্ধতির জন্য +1। আপনি "theanswertolifetheuniverseandeverything"[w%39] টিআইও
অফিসিয়ালাইম

ধন্যবাদ এবং উল্লেখ করা। আমি এখানে এখন বন্ধনী বুলিয়ান সেটআপটির জন্য 'বা' প্রতিস্থাপনের পাশাপাশি এটির সাথে কাজ করার চেষ্টা করছিলাম, তবে এটি আমার নতুন লাইনগুলিকে গণ্ডগোল করছে ...
কোটি জনাথান স্যাক্সমান

আমি জানতাম না পিএনজি এই কম্প্রেশন অ্যালগরিদমটি ব্যবহার করেছিল - আমি ভেবেছিলাম এটি জিআইএফ।
wizzwizz4

আমার স্নাতকের. এটি পিএনজি (না জিআইএফ) ছিল না, তবে আসলে আরএলই ছিল। আমি উত্তরের একটি লিঙ্ক যুক্ত করব।
কোটি জননাথন স্যাক্সমান

5

এসওজিএল ভি0.12 , 74 বাইট

"ō⅓׀?@C⁶¬IΧΖO‘@øŗč"βΘ⅔Μv∙KΩqψ3╥W≡A;2ļm½±iq╗∆Δ⁶Πqīσ‽ε⁰5τΩ⅜δσΞoΤi┘‽N¹\Λ:‘'    n

এখানে চেষ্টা করুন!

"...‘              push "the answer to life the universe and everything". because of a bug-not-really-bug, the starting quote is required
     @øŗ           remove spaces
        č          chop it into characters
         "...‘     push a string of spaces and ŗ where ŗ gets replaced with each next characters of the character array
              ' n  split into an array of line length 27

5

আমাকে আমার নিজের প্রশ্নের উত্তর দেওয়ার অনুমতি দিন ...

কাঠকয়লা , 140 126 112 বাইট

A⟦⟧βF⁶⁸F⁻℅§”c#*U[“⎆Vl¶·δ‴ü"Ip8ξZ{e/⪫¦σMM⪫¢Q⁸ULê←⪫W?—υ⁻$⌀)”ι³⁴«¿﹪ι²§”m⌊0Y℅¿№”XJ-⁵η}Z¿8_*<o%!±Ÿ”L⊞Oβω ¿¬﹪L⊞Oυω²⁷⸿

এটি অনলাইন চেষ্টা করুন!

আপনার কাছে এখানে নিকটতম বাগাড়ম্বরপূর্ণ সংস্করণ একটি লিঙ্ক।

ব্যাখ্যা (বিশদটির জন্য ভার্বোজ সংস্করণ দেখুন):

  • )%*(+&(+)''%'%'('%'%&%#%'%'%%%$%-&%%%%+&&%&%)&(.&%*.%%2%'%(%)%'.)%'.স্ট্রিং (68 বাইট, 48 বাইট সংকুচিত) আঁকার RLE-এনকোডিং একটি উপস্থাপনা। প্রতিটি চর কোড বিয়োগ 34 34 ফাঁকা সংখ্যা (এমনকি পজিশন) বা টেক্সট অক্ষরের সংখ্যা (বিজোড় অবস্থান) একটানা প্রিন্ট করা।
  • অ্যালগরিদমটি কেবল আরএলই-এনকোডযুক্ত স্ট্রিংটি সংক্ষেপিত করে এবং স্ট্রিংয়ের পরবর্তী চরটি লিখেছিল gtheanswertolifetheuniverseandeverythin(39 বাইট, 27 বাইট সংকোচিত) প্রতিবার যখন কোনও শ্বেতস্থান অক্ষর লেখার প্রয়োজন হয়। আমি পরের অক্ষরটি পেতে তালিকার দৈর্ঘ্য যাচাই করেছিলাম এবং সেই তালিকাটি একটি উপাদান দিয়ে শুরু হয়, স্ট্রিংয়ের শেষ অক্ষরটি প্রথম অবস্থানে লেখা হয়।
  • আমি লিখিত প্রতি 27 টি অক্ষর আমি একটি নতুন লাইন .োকান।

প্রাপ্তি স্বীকার

  • আমাকে 28 বাইট বাঁচাতে এবং শেষ পর্যন্ত বুবলগামকে পরাস্ত করতে সক্ষম করার জন্য নীল এবং তার আশ্চর্যজনক টিপসটির জন্য অনেক ধন্যবাদ। :-)

1
আপনি যদি ব্যবহার করেন Assign(Minus(1, c), c);তবে আপনি কেবল ব্যবহার করতে পারেন if (c) { ... } else Print(" ");
নীল

আসলে আপনি যদি ব্যবহার করেন for (68)এবং AtIndex("...", i)তারপরে আপনি এর Modulo(i, 2)পরিবর্তে ব্যবহার করতে পারেন এবং আপনার কোনও প্রয়োজন নেই c
নীল

এবং আপনি যদি ব্যবহার করেন if (Not(Modulo(Length(PushOperator(u, w)), 27)))তবে aআপনারও দরকার নেই ।
নীল

ওহ, এবং AtIndexএকটি স্বয়ংক্রিয় Moduloতাই ন্যায়বিচার Modulo(b, 39)হতে পারে b
নীল

1
uএকটি পূর্বনির্ধারিত পরিবর্তনশীল যা কেবল একটি খালি অ্যারে (ব্যবহার করে সংরক্ষণ করে A⟦⟧υ)। প্রতিবার আপনি কোনও কিছুতে এটি চাপুন এর দৈর্ঘ্য ১. বৃদ্ধি পাবে এটি বর্ধনের ক্ষেত্রে একটি স্পষ্টকৃত কার্যভারের চেয়ে কম।
নীল

5

জাভাস্ক্রিপ্ট (ES6), 207 205 203 বাইট

কিছু পিছনে স্থান সহ স্ট্রিংগুলির একটি অ্যারের ফেরত দেয়।

let f =

_=>[16515968,33489856,k=58950624,k+16,k-40,31458204,7865230,1966983,462847,233471,117670784,k=134185856,k].map(n=>'heanswertolifetheuniverseandeverythingt '.replace(/./g,(_,i,s)=>s[n>>i&i<27?k++%39:39]))

console.log(f().join('\n'));


4

রেটিনা , 183 বাইট


7386¶6469¶555353¶465353¶33135353¶23239024¶133394¶034374¶090343¶090333¶735363¶735903¶735903¶theanswertolifetheuniverseandeverything
.*$
$&$&$&$&
(\d)(.)
$1$* $2$*
+s`1([ 1¶]+)(.)
$2$1

এটি অনলাইন চেষ্টা করুন! ব্যাখ্যা: প্রথম পর্যায়ে সেল বিটম্যাপ এবং পাঠ্যের আরএলই এনকোডিং যুক্ত হয়, যা দ্বিতীয় পর্যায়ে পরে সঠিক দৈর্ঘ্যে সদৃশ হয়, যখন তৃতীয় স্তরটি আরএলই এনকোডিং ডিকোড করে। চতুর্থ পর্যায়ে তারপরে পাঠ্যকে কোষে স্থানান্তরিত করে।


4

জেলি , 83 বাইট

“¡eu⁾ṃṣƬİḂṃ½)ṣṾṘƇ@^AṀẆṫ+¢ṗɲ⁾ṭḋZ`⁺×Ṗj½Ṇ-Þḣ2żṿƤc’BCẋ"`“ÆZ⁺ƙ{Æß¥ŀŒ1gỤ3Ḍṭṁ ṃjɓ»ṁȯ€⁶s27Y

এটি অনলাইন চেষ্টা করুন!

কিভাবে এটা কাজ করে

“XX’BCẋ"`“YY»ṁȯ€⁶s27Y
“XX’                   a large number
    B                  binary
     C                 complement
      ẋ"`              1 becomes [1] and 0 becomes []
             ṁ         reshape
         “YY»             "theanswertolifetheuniverseandeverything"
              ȯ€⁶      replace [] with " "
                 s27   split into chunks of length 27
                    Y  join with newline

3

++ , 1398 বাইট যুক্ত করুন

+32
&
&
&
&
&
&
&
+84
&
-12
&
-3
&
-69
&
&
&
&
&
&
&
&
+65
&
+13
&
+5
&
+4
&
-18
&
+13
&
-104
&
+22
&
&
&
&
&
&
+84
&
-5
&
-3
&
-3
&
-73
&
&
&
&
&
&
+70
&
-1
&
+15
&
-12
&
-3
&
+16
&
-7
&
-5
&
+13
&
-108
&
+22
&
&
&
&
&
+69
&
+13
&
+1
&
-14
&
-4
&
-65
&
&
&
&
&
+78
&
-10
&
+1
&
-69
&
&
&
&
&
+86
&
-17
&
+13
&
-104
&
+22
&
&
&
&
+89
&
-5
&
-12
&
+1
&
+5
&
-7
&
-71
&
&
&
&
&
+84
&
-12
&
-3
&
-69
&
&
&
&
&
+65
&
+13
&
+5
&
-105
&
+22
&
&
&
+87
&
-18
&
+13
&
-82
&
+84
&
-5
&
-3
&
-76
&
&
&
&
&
+73
&
-3
&
-1
&
-69
&
&
&
&
&
+84
&
-12
&
-3
&
-91
&
+22
&
&
+85
&
-7
&
-5
&
-73
&
&
+86
&
-17
&
+13
&
-82
&
&
&
&
&
&
&
&
&
&
&
+83
&
-14
&
-4
&
+13
&
-100
&
+22
&
+68
&
+1
&
+17
&
-86
&
&
&
+69
&
+13
&
+7
&
-89
&
&
&
&
&
&
&
&
&
+84
&
-12
&
+1
&
+5
&
-100
&
+93
&
+13
&
-12
&
-72
&
&
&
&
+69
&
-4
&
+13
&
-78
&
&
&
&
&
&
&
+83
&
+4
&
-18
&
+13
&
-104
&
+106
&
-5
&
-3
&
-3
&
-3
&
-1
&
+15
&
-12
&
-3
&
+16
&
-7
&
-5
&
-73
&
&
&
&
+86
&
-17
&
+13
&
-104
&
+105
&
-14
&
-4
&
+13
&
-10
&
+1
&
+17
&
-17
&
+13
&
+7
&
-5
&
-12
&
-72
&
&
&
+73
&
+5
&
-7
&
-93
&
+22
&
&
&
&
&
&
&
+84
&
-12
&
-3
&
-69
&
&
&
&
&
+65
&
+13
&
+5
&
-83
&
&
&
&
&
&
+87
&
-18
&
+13
&
-104
&
+22
&
&
&
&
&
&
&
+84
&
-5
&
-3
&
-76
&
&
&
&
&
+73
&
-3
&
-1
&
+15
&
-12
&
-3
&
+16
&
-7
&
-5
&
+13
&
-17
&
+13
&
-104
&
+22
&
&
&
&
&
&
&
+83
&
-14
&
-4
&
-65
&
&
&
&
&
+78
&
-10
&
+1
&
+17
&
-17
&
+13
&
+7
&
-5
&
-12
&
+1
&
+5
&
-7
&
P

এটি অনলাইন চেষ্টা করুন!

দেখে মনে হচ্ছে হার্ডকোডিংটি এটি সবচেয়ে স্বল্পতম উপায় (কমপক্ষে ++ অ্যাডে অন্তর্ভুক্ত)


3

ভিম, 239 কীস্ট্রোক

:h4<CR>3hy5bZZitheanswerto<Esc>p:%s/ \|,//g<CR>ye3P
lqqi<CR><Esc>qqw3li <Esc>lq3@wbhr<CR>16l@q@w3-@w6l@ql@w9l@qll3@whr<CR>3l9@w4l@q 2@w4l@q2@w4l@q9l2@wlr<CR>9l@w4klr<CR>4whr<CR>jj
el<C-v>3k"aD0jji <Esc>qqdiwukPi <Esc>q5@qwy04j$"ap6+<C-v>GPp3kw3i <Esc>2@q4kbXj2@qywh<C-v>4jp2je<C-v>jj4A <Esc>8j5i <Esc>b<C-v>jj2I <Esc>

"পাঠযোগ্যতা" এর জন্য লাইন ব্রেকগুলি যুক্ত করা হয়েছে

ব্যাখ্যা

life, the universe and everythingসহায়তা পৃষ্ঠা থেকে প্রথম লাইনটি ইয়াঙ্কস যা এটি টাইপ করার চেয়ে এক বাইট ছোট orter এটি তারপরে এটিকে পরিণত করে:

theanswertolifetheuniverseandeverythingtheanswertolifetheuniverseandeverythingtheanswertolifetheuniverseandeverythingtheanswertolifetheuniverseandeverything

দ্বিতীয় লাইনটি স্ট্রিংটিকে এতে বিভক্ত করে:

the answer
toli fetheuniv
ersea nde ver
ything the ans
wer tol ife the
uni ver sean
dev ery thin
gth ean swer
tolifetheuni ver
seandeveryth ing
the ans wer
tol ifetheuniver
sea ndeverything

এবং তারপরে চূড়ান্ত লাইনটি এটি তৈরি করতে প্রবেশ করে:

       the        answer
      toli      fetheuniv
     ersea     nde     ver
    ything     the     ans
   wer tol     ife     the
  uni  ver           sean
 dev   ery         thin
gth    ean       swer
tolifetheuni    ver
seandeveryth   ing
       the     ans      wer
       tol     ifetheuniver
       sea     ndeverything



2

জাভাস্ক্রিপ্ট, 215 বাইট

অতিথি 44851 এর উপর ভিত্তি করে সমাধান

$=>'a21xb0k9qf30155yiv016ewp3018lkhz0ohfdb077or302cl5b0mgzr0b8hz028ghs7028gi67028gi67'.split(p=0).map(x=>parseInt(x,36).toString(2).slice(1).replace(/./g,x=>" theanswertolifetheuniverseandeverything"[+x&&1+p++%39]))

2

রুবি , 216 বাইট

o=i=1
puts"6iffnqxq0opdbco5e3f1zk5d7eezo2j6zwly9z5yykqsc1hl5svaof".to_i(36).to_s(17).chars.map{|c|
o=!o
c.to_i(17).times.map{o ? (i+=1)&&"ngtheanswertolifetheuniverseandeverythi"[i%39]:" "}.join
}.join.scan /.{1,27}/

এটি অনলাইন চেষ্টা করুন!

ব্যাখ্যা পাইথন সমাধানগুলির অনুরূপ তবে আমি 36 টি বেসে রূপান্তরিত করার আগে রান লেংথ এনকোডিং ব্যবহার করেছি So সুতরাং ডেটা স্ট্রিং 68 এর পরিবর্তে কেবল 54 টি অক্ষর।

তবে এটি এখনও সর্বোপরি শেষ হয়েছে, আশা করি এটি আরও গল্ফ করা যেতে পারে।


2

আমার কাঠকয়ালের উত্তরের একটি বন্দর :

সি # (.নেট কোর) , 229 বাইট

_=>{var r="";for(int i=0,j,k=0,n=0;i<68;i++)for(j=0;j++<")%*(+&(+)''%'%'('%'%&%#%'%'%%%$%-&%%%%+&&%&%)&(.&%*.%%2%'%(%)%'.)%'."[i]-34;){r+=i%2<1?' ':"theanswertolifetheuniverseandeverything"[k++%39];if(++n%27<1)r+='\n';}return r;}

এটি অনলাইন চেষ্টা করুন!


2

সি (জিসিসি) , 220 219 217 213 210 বাইট

-1 বাইট সিলিংক্যাট ধন্যবাদ

-3 বাইট জেরি যিরমিয়াকে ধন্যবাদ

q,i,j,t;main(c){for(;c="HDIG@GEGJ@FFFDFD@EGFDFD@DDBDFDFD@CDCDLE@BDDDJE@ADEDHE@AMED@AMDD@HDFDGD@HDFM@HDFM"[t++];)for(c%=64,j=c?q=!q,c:2;--j;)putchar(c?q?32:"theanswertolifetheuniverseandeverything"[i++%39]:10);}

এটি অনলাইন চেষ্টা করুন!


একটি ফাংশনটি কেবলমাত্র অর্ধেক প্রোগ্রাম - 214 বাইটের
জেরি যেরেমিয়া

@ জেরি জেরেমিয়া খুব সত্য; আমার স্নাতকের! এটি থেকে আরও একটি বাইট শেভ করতে পারে।
গ্যাস্ট্রোপনার

1

জাভাস্ক্রিপ্ট, 265 237 219 বাইট

(i=0)=>'jwq80,13ntvk,26p62g,25g7w8,239k3c,zg4xc,7rpbk,1e9dc,b8mw,5mbc,4f9reg,4f9r0g,4f9r0g'.split`,`.map(b=>parseInt(b,36).toString(2).slice(1).replace(/./g,c=>'  theanswertolifetheuniverseandeverything'[+c||2+i++%39]))

কিছুটা বাইট অফ থেস্ট ধন্যবাদ @

JSFiddle


.substr -> .স্লাইস (1) কিছু বাইট সংরক্ষণ করুন
tsh

"আউটপুট স্ট্রিং এর তালিকা হতে পারে" তাই শুধু লাফালাফিjoin
TSH

@tsh। ধন্যবাদ। । ।

1

পাইথ , 121 বাইট

এটিতে অনেকগুলি বাইট রয়েছে যা আমি টিআইওতে দেখাতে পারিনি, সুতরাং এখানে একটি হেক্সডাম্প রয়েছে:

00000000: 7558 6848 477c 2a64 6548 622c 5658 434d  uXhHG|*deHb,VXCM
00000010: 2290 8d8d 817e 7e7b 7875 7572 6663 5753  "....~~{xuurfcWS
00000020: 504d 4946 4343 3f3c 3939 3633 302d 2d2a  PMIFCC?<99630--*
00000030: 2721 211e 1b16 160d 0909 0300 225d 545d  '!!........."]T]
00000040: 3133 6a43 2202 1232 a464 b09d 7303 4244  13jC"..2.d..s.BD
00000050: 9386 74d2 e954 b89e e722 3132 2a34 2e22  ..t..T..."12*4."
00000060: 6179 1aa6 55ad c176 932b 6088 d5c5 556c  ay..U..v.+`...Ul
00000070: e4f4 5575 12a0 e7fb 1f                   ..Uu.....

এটি অনলাইন চেষ্টা করুন!

আপনি একটি কল যোগ করতে পারেন wcবা xxdবাইট দৈর্ঘ্য বা hexdump আমি উপরের উত্পাদিত দেখতে ব্যাশ স্ক্রিপ্টের মধ্যে।

মজার বিষয় হল এই প্রোগ্রামটি পাইথের একটি ছোটখাটো বাগ (?) প্রদর্শন করে। যে কোনও ক্যারিজ রিটার্ন বাইটস (0x0 ডি) স্ট্রিং ল্যাটারিয়ালে যখন নিউলাইন বাইটস (0x0a) হিসাবে পড়া হয়। এটি আমাকে 6 বাইট যুক্ত করতে বাধ্য করে: X ... ]T]13ভুল দশটি তেরো দিয়ে প্রতিস্থাপন করতে।

অন্যথায় এই কোডটির পিছনে ধারণাটি মোটামুটি সহজ ছিল: প্রতিটি অবস্থান যেখানে রেকর্ড স্পেস হয় সেখানে রেকর্ড করুন। তারপরে, সেই সূচির প্রত্যেকটির সাথে সেই রানের ফাঁকের সংখ্যা যুক্ত করুন। তারপরে, চার বার বাক্যটি পুনরুক্ত করে তারপরে সঠিক অবস্থানগুলিতে inোকিয়ে মূল স্ট্রিংটি পুনর্গঠন করুন। রেকর্ড করা জায়গাগুলির সংখ্যা যদি শূন্য হয়, পরিবর্তে একটি নতুন লাইন isোকানো হয়।


1

জাভা (ওপেনজেডিকে 8) , 258 252 251 বাইট

z->{int i=0,x,j,N[]={16515968,33489856,x=58950624,x+16,x-40,31458204,7865230,1966983,462847,233471,117670784,x=134185856,x};for(int n:N)for(j=32;j-->0;n/=2)System.out.print(n%2<1?j<1?"\n":" ":"theanswertolifetheuniverseandeverything".charAt(i++%39));}

এটি অনলাইন চেষ্টা করুন!

এটি বরং নিষ্পাপ বাস্তবায়ন মুদ্রিত অক্ষরগুলির জন্য প্রথমে একটি মাস্ক, তারপরে সম্পন্ন হওয়া পর্যন্ত পাঠ্যের উপরে রোল।

  • কার্লোস আলেজোকে 6 বাইট সংরক্ষণ করা হয়েছে!

আপনি কিছু বাইট সংরক্ষণ করতে পারেন int[]{16515968,33489856,x=58950624,x+16,x-40,31458204,7865230,1966983,462847,233471,117670784,x=134185856,x}
চার্লি

0

জাভাস্ক্রিপ্ট, আনুমানিক অঙ্কন। 319 বাইট

s=32
t="theanswertolifetheuniverseandeverything"
j=0
o=""
b=document.createElement('canvas'),c=b.getContext('2d')
b.width=b.height=s
c.font="25px Verdana"
c.fillText('42',0,20)
m=c.getImageData(0,0,s,s)
i=0
while(i<m.data.length) {
 d=m.data[i+3]
 o+=d?t[j%t.length]:" "
 if(d)j++
 i+=4
}
o.match(/.{1,32}/g).join("\n")

it's এটির মূল্যের জন্য, খুব বেশি সত্য নয়, তবে আমি ব্যর্থ কোডটি মুছে ফেলার আগে।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.