人生、宇宙、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文字が含まれています。

ルール

  • 入力なしまたは未使用の入力。
  • 出力は、任意の妥当な形式(文字列、文字列のリスト、文字のマトリックスなど)にすることができます。
  • 必要に応じて、描画に小文字ではなく大文字を使用できます。
  • 末尾の空白と改行が許可されます。
  • これはなので、各言語の最短のプログラム/機能が勝つかもしれません!

ノート


これはサンドボックスから来ます。
チャーリー

1
個人的には、これは話題ではなく、だましだと思います。ただし、ネタバレ引用符は必要ないと思います。
Programmer5000

1
@Phoenixこれはだましだとは思わない、soglbubblegumを凌hasしている。したがって、圧縮はこれを行う最適な方法ではありません。
Programmer5000

1
正直なところ、私は私の再開投票が拘束力があることを知りませんでした。すでに@ programmer5000で述べた理由から、私は実際にそれがのだまされやすい人だとは思わない私たちは何も知らない人じゃないんです...。それは別の-まだ特定されていない-挑戦のだましかもしれませんが、これではありません。
アーナルド

1
@Nachtの最良の部分は、最初に42with *文字を描いてから、それらを完全に適合するテキストに置き換えたことです。文が収まるように元の図面を変更する必要はありませんでした。一致?
チャーリー

回答:


21

Pythonの3224の220 219 215 211 194バイト

  • 1 5バイトの@TFeldに感謝します:if(j%27<1)*j代わりにif j*(j%27<1)、簡略化されたprintステートメント。
  • 4バイトの@Leaky Nunのおかげで:0と1を反転するためにゼロによるパディングは必要ありませんでした 7*'0'
  • @Leaky nunは、素晴らしいゴルフスキルで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

オンラインでお試しください!

説明:

base-36圧縮を使用して、この2進数を圧縮します(改行は除外されます)

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

基本的に2つのカウンターiとがありjます。に遭遇する1と、スペースを印刷します。そうでない場合0は、文字列から次の文字を印刷して増加しiます。jごとに増加します0 or 1。また、必要に応じて、つまりj%27<1trueになったときに改行を印刷します。


1
に変更if j*(j%27<1):することにより、1バイトを節約できますif(j%27<1)*j:
-TFeld


2
整数演算で201バイト
リーキー修道女

2
モジュラーインデックス付けで200バイト
リーキー修道女


8

Pythonの2235の 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

オンラインでお試しください!

thew質問で示唆されているように、文字の位置のbase 36エンコードされたintに切り替えました。

各文字を1つずつ置き換えます。

       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

編集:それはofficialaimmが私の前にベース36を使用したようです。


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

オンラインでお試しください!


これをどのように生成しましたか?一番近いのは127
musicman523

1
zopfli
デニス

私は、使用zopfliをしましたが、私は127の下で得ることができませんでした....私は余分なスペースで、とと末尾の改行せずに試してみました誓う
musicman523

6

05AB1E83 79 74 バイト

Erik the Outgolferのおかげで-4バイト

文字列のリストを出力して、バイトを保存します。

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

オンラインでお試しください!

説明

2ÖH₆Ôn₅Ò\ÊÑĆ¸Ý¾*£„ÔûC∞qΘœ™‚¹µ—₃₄fm 10進数の基数255の表現です。

73869469755353565353431353533323902433339443437469034389033390735363735903735903

1sと0sのランをそれぞれエンコードします。インデックスが1sで、不均一な場合は0sを示します。これは、2進数に評価されます。

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

置き換え"ÔAo îιË3š1ĆRÕ₃FWš{ÓÛÏ.!XµM§&¶ñD°3PŸ{óNι2Ðbмh"253ö•—."Ôq‚Ā0Ál0j¿«ªžé¨0õ₄7“Ÿ!½ÏiæÆø-δq–Å05q½Yñá+•用-4。
エリックアウトゴルファー

@EriktheOutgolferありがとう、私の答えを更新し、今、私は最終的にこれらが何のためであるかを知っています:)
kalsowerus

いい答えだ :)。あなたが言語を学び続けることを願っています。ご質問がある場合は、お気軽にチャットしてください。
魔法のタコUr

@MagicOctopusUrnありがとうございます!:)
カルソウェラス

6

Pythonの2220の213 212バイト

()*4%39 @officialaimm からの切り替え-1バイト

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

オンラインでお試しください!

これは、他のPythonの回答とは異なるアプローチです。私が使用六角 ベース36の符号化(保存された7バイト)PNG形式 RLE形式の符号化画像(連続した繰り返しの画素数を示す数字列)のを。

数字のストリングは次のとおりです

73869469755353565353431353533323902433339443437469034389033390735363735903735903

次に、それらの数字を繰り返し処理し、その数の「」または文字をパレットから交互に印刷します(「theanswer ...」)。文字が9個以上繰り返される場合、0を追加してから残りを追加します。


さまざまなアプローチに対して+1。あなたは使用してバイトを保存することができ"theanswertolifetheuniverseandeverything"[w%39] TIO
officialaimmを

感謝し、注意した。私は今ここにあるブラケットブールのセットアップのための「または」交換と一緒にそれを仕事にしようとしていたが、それは私の改行をめちゃくちゃだ...
コティジョナサンサックスマン

PNGがこの圧縮アルゴリズムを使用していることを知りませんでした-これはGIFだと思いました。
wizzwizz4

ナイスキャッチ。PNG(またはGIF)ではなく、実際にはRLEでした。回答へのリンクを追加します。
コティジョナサンサックスマン

5

SOGL V0.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を引いた値は、連続して印刷するスペースの数(偶数の位置)またはテキスト文字の数(奇数の位置)です。
  • アルゴリズムは、RLEエンコードされた文字列を単に解凍しgtheanswertolifetheuniverseandeverythin、非空白文字を書き込む必要があるたびに、文字列の次の文字(39バイト、27バイト圧縮)を書き込みます。リストの長さをチェックして次の文字を取得し、そのリストが1つの要素で始まると、文字列の最後の文字が最初の位置に書き込まれます。
  • 書かれた27文字ごとに新しい行を挿入します。

謝辞

  • 28バイトを節約し、最終的にBubblegumに勝つことができるようにするためのNeilと彼のすばらしいヒントに感謝します。:-)

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⟦⟧υ)。何かをプッシュするたびに、その長さは1ずつ増加します。これは、増分する明示的な割り当てよりも短くなります。
ニール

5

JavaScriptの(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

オンラインでお試しください!説明:最初のステージではセルビットマップとテキストのRLEエンコードが追加され、2番目のステージでは正しい長さに複製されます。3番目のステージではRLEエンコードがデコードされます。4番目の段階では、テキストをセルに移動します。


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

Add ++、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

オンラインでお試しください!

ハードコーディングのように見えますが、これが最短の方法です(少なくともAdd ++では)


3

Vim、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は、単に入力するよりも1バイト短いヘルプページからヤンクします。次に、これを次のように変換します。

theanswertolifetheuniverseandeverythingtheanswertolifetheuniverseandeverythingtheanswertolifetheuniverseandeverythingtheanswertolifetheuniverseandeverything

2行目は、文字列を次のように分割します。

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

JavaScript、215バイト

guest44851に基づくソリューション

$=>'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}/

オンラインでお試しください!

説明 Pythonソリューションに似ていますが、ベース36に変換する前にRun Length Encodingを使用しました。したがって、データ文字列は68文字ではなく54文字になります。

しかし、それでも結局はもっと長くなってしまいました。できればさらにゴルフができることを願っています。



2

C(gcc)220 219 217 213 210バイト

ceilingcatのおかげで-1バイト

Jerry Jeremiahのおかげで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バイト
ジェリーエレミヤ

@JerryJeremiah非常に真実です。ナイスキャッチ!それからもう1バイト削ることもできます。
ガストロプナー

1

JavaScriptの、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]))

@tshのおかげで、数バイトは削減されました。

JSFiddle


.substr-> .slice(1)いくつかのバイトを保存
-tsh

「出力は文字列のリストに入れることができます」ので、スキップしますjoin
-tsh

@tsh。ありがとう。。。

1

パイス、121バイト

これにはバイトが多すぎてTIOに表示できなかったため、hexdumpがあります。

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 bashスクリプトに、bashスクリプトに、上記で作成したバイト長または16進ダンプを確認できます。

興味深いことに、このプログラムはPythの小さなバグ(?)を示しています。文字列リテラルの場合、キャリッジリターンバイト(0x0d)は改行バイト(0x0a)として読み取られます。これにより、6バイトの追加が強制されます。X ... ]T]13誤った10に置き換え。

それ以外の場合、このコードの背後にある考え方は非常に単純でした:空白の実行が発生する各位置を記録します。次に、それらのインデックスのそれぞれをその実行のスペースの数とペアにします。次に、フレーズを4回繰り返して正しい文字列を挿入し、元の文字列を再構築します。記録されたスペースの数がゼロの場合、代わりに改行が挿入されます。


1

Java(OpenJDK 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));}

オンラインでお試しください!

かなり単純な実装です。最初に、印刷された文字のマスク、次に完了するまでテキストをロールオーバーします。

  • Carlos Alejoのおかげで6バイト節約!

でいくつかのバイトを保存できますint[]{16515968,33489856,x=58950624,x+16,x-40,31458204,7865230,1966983,462847,233471,117670784,x=134185856,x}
チャーリー

0

Javascript、おおよその図面。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")

^本当に価値はありませんが、失敗したコードを削除する前に。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.