Katakan "Halo" kepada dunia dalam seni ASCII

14

Tantangan: Hasilkan keluaran berikut menggunakan sesedikit mungkin karakter:

 _   _      _ _                             _     _ _
| | | | ___| | | ___    __      _____  _ __| | __| | |
| |_| |/ _ \ | |/ _ \   \ \ /\ / / _ \| '__| |/ _` | |
|  _  |  __/ | | (_) |   \ V  V / (_) | |  | | (_| |_|
|_| |_|\___|_|_|\___( )   \_/\_/ \___/|_|  |_|\__,_(_)
                    |/

Aturan dan batasan:

  • Anda tidak boleh menggunakan FIGLet atau alat serupa lainnya. (Kalau tidak, figlet Hello, world!akan menjadi solusi yang sepele dan cukup tak terkalahkan.)

  • Program Anda harus seluruhnya terdiri dari karakter ASCII yang dapat dicetak - khususnya, titik kode 9 (TAB), 10 (LF) dan 32 - 126. (Jika bahasa / OS Anda membutuhkan jeda baris CRLF, Anda dapat menggunakannya sebagai ganti LF biasa.) Ya , sayangnya ini mendiskualifikasi bahasa apa pun yang memerlukan karakter non-ASCII (atau data non-tekstual) sebagai bagian dari sintaksnya.

  • Outputnya harus persis seperti contoh di atas. Anda dapat, bagaimanapun, menyertakan spasi putih tambahan di sekitar output jika Anda mau. Anda dapat mengasumsikan penspasian tab 8 karakter (atau pengaturan default bawaan platform yang Anda pilih, jika ada yang konsisten).

Ps. Untuk mengatur nominal, saya datang dengan solusi 199-char Perl. Saya belum akan mempostingnya, kalau-kalau ada orang yang datang secara independen. (Juga, ini agak murahan.) Tentu saja, ini seharusnya tidak mencegah Anda dari memposting solusi Anda sendiri, bahkan jika itu lebih lama.


Pembaruan: Sekarang han telah mengalahkannya dengan satu char, inilah solusi 199-char saya yang murahan:

use Compress'Zlib;say uncompress unpack u,'M>-I]BT$*`S$,`^]YQ=R:0,&_Z<DP?8@?WVQJ]E2J"%E$$@)R(/(/MCJ*\U!OM`Z#=5`4Y>6M=L\L%DMP&DB0V.4GQL&OOGB$4:%`4TT4!R8O-Z(^BTZWNV?>F86K:9+""-35*-LNC:T^D:_$#%^`";"DD0'

Ini sangat mirip dengan solusi DC (dan semua solusi berbasis zlib / gzip lainnya dalam berbagai bahasa), kecuali bahwa saya menggunakan uuencoding alih-alih base64 untuk teks yang dikompresi dan beberapa trik golf kecil lainnya.


Pembaruan 2 : Saya pikir sudah waktunya untuk secara resmi menerima pemenang. Tempat pertama adalah kode PHP konsolenfreddy , karena, bagaimanapun Anda menghitung karakter, ini adalah yang terpendek yang dikirimkan sejauh ini. Bahkan, menggabungkannya dengan aliran DEFLATE yang dioptimalkan dari kode 199-char Perl saya menghasilkan solusi 176-char yang lebih pendek:

<?=gzinflate(base64_decode("fYtBCgMxDAPvecXcmkDBv+nJMH2IH99savZUqghZRBICciDyD7Y6ivNQbwOg3VQFOXlrXbPLBZLcBpIkNjlJ8bBr754hFGhQFNNFAcmLzeiPotOt7tn3plq2mSwgjU1SjbLo2tPpGvxAxfgA"));

Namun, saya benar-benar berpikir bahwa Han layak mendapat penghargaan kehormatan khusus untuk menjadi begitu dekat tanpa menggunakan alat dekompresi pra-tertulis. Selamat untuk Anda berdua, dan tahun baru yang bahagia untuk semua orang!

Ilmari Karonen
sumber
Ok, saya harus melakukan ini di C ...
Michael Dorgan

Jawaban:

1

Stax , 137 byte

"9&BO]h>&)>3ieuCoKVKVnuOoT'E-^Z(1.3u[);h1[RTOGqTZkoQx?KMy&9ctG&*y~HxR9%GYn.rYMdMcOOq^wXc@%zy*P[*Q"90|E|B"0+1"{%",``_|\/()V'"@]}R.1 |t54/m

Jalankan dan debug itu

Ini berfungsi seperti ini.

  1. Mulailah dengan string string besar.
  2. Konversikan ke integer dengan mendekode sebagai nomor basis-90.
  3. Ubah nomor itu menjadi biner.
  4. Rangkaian 0diikuti oleh a 1diterjemahkan ke dalam karakter non-spasi.
  5. Semua yang tersisa 1diganti dengan spasi.
  6. String yang dihasilkan dibagi menjadi garis 54 karakter.
rekursif
sumber
Selamat, sepertinya ini adalah solusi terpendek sekarang! :)
Ilmari Karonen
17

Perl 5.10 - 195 198 202 203 karakter

Inilah entri yang tidak memerlukan pustaka di luar pencocokan regexp dasar. String yang disandikan adalah 131 karakter, dan kode untuk memecahkan kode dan mencetaknya membutuhkan 64 karakter (dengan asumsi tidak ada baris baru di akhir sumber). Idenya adalah untuk mewakili string 3-karakter umum dengan huruf kecil.

s!!xfefxxf\t\t\tf efyx
no| cnocfxefxceyxm|xmn
nm|wtnwtgt/uvy \\| 'ym|w`o|
pepyy/o| _ogrr/ _opn (ml
l lbyly|by( )fiihyjm lb,y_
\t\tf |/!;s!\w!substr'(_)\___   \_/|_| |  V \ / _',-95+ord$&,3!eg;say

Encoder jauh lebih lama dan sayangnya tidak terlalu mudah dibaca saat ini. Ide dasarnya adalah menggunakan pemrograman dinamis untuk menemukan pengkodean terpendek untuk setiap baris, mengingat serangkaian penggantian string yang tetap. String substitusi pada baris terakhir dibangun dengan coba-coba, dan ada kemungkinan bahwa string substitusi lain mungkin mengarah pada program yang lebih pendek daripada di atas.

Satu trik di sini adalah bahwa beberapa pergantian lebih pendek dari 3 karakter: karena cara perl substrbekerja, xdigantikan oleh ' _' dan yoleh ' _'. Yang terakhir diperlukan karena \wdalam pertandingan regex ' _', yang kemudian digantikan oleh ' (_)'.

han
sumber
+1, sangat bagus. Anda dapat menyimpan 2 karakter dengan menggantinya printdengansay
Toto
@ M42: Sejauh yang saya bisa tahu, pada perl 5.10 untuk menggunakan sayAnda harus melakukan use 5.010;atau menjalankan skrip sebagai satu-liner dengan perl -E 'script here'. Yang pertama membuat kode lebih lama dan yang terakhir tidak sesuai untuk skrip multi-baris. Apakah saya melewatkan sesuatu?
han
Tidak termasuk -Edalam jumlah char.
Toto
1
Ps. Anda dapat menyimpan beberapa karakter lagi dengan menggunakan s''...'alih-alih $_=q!...!; hanya ingat untuk menghindari kutip tunggal. Dengan itu dan saybukannya print(dan meninggalkan baris baru terakhir), saya mendapatkan ini hingga 198 karakter.
Ilmari Karonen
2
BTW, saya mencoba menggunakan tab alih-alih #untuk jangka waktu yang lama dan mendapatkan solusi Anda hingga 190 karakter. Saya ingin tahu apakah pergi di bawah 184 karakter dimungkinkan - yang akan mengalahkan semua solusi zlib-kompresi sejauh ini.
Ilmari Karonen
12

Brainfuck - 862 karakter:

>++++[<++++++++>-]>-----[<---->---]<+++>>--[<+>--]<---<<.>.<...>.<....
..>.<.>.<.............................>.<.....>.<.>.>>++++++++++.<.<<.
>>.<<.>>.<<.>>.<<.>...>.<<.>>.<<.>>.<<.>...<....>..<......>.....<..>.<
.>..>.<<.>>.<<.>..>.<<.>>.<<.>>.>.<.<<.>>.<.>.<<.>>.>>>-[<->+++++]<---
-.<<<<.>.<.>---.+++<.>>.<<.>>.>>.<<<<.>.<.>---.<...>.<.>.<.>>>>.<<<.<.
>>>>.<<<<.>>>>.<<<<.>+++.<.>---.>.<<.>>>>>>---[<+>+++++++]<++.<<<<+++.
.>.<<.>>.>>.<<<<.>.+.-<.>>.<<.>>.>.<.<<..>.<..>>.<<..>..>>>.<<<<.>>.<<
.>>.<<.>>>>>+.<<<<.>>>>+.<<<<<.>>.<<...>---.<.>------.<..>.<.>>>>.<<<<
.>>>>>-.<<<<+++++++++.>>>>+.<<<<<.>>.<<.>>.<<..>>.<<.>>.<<.>>>>>-.<<<<
.>.<<.>>.<.>.>.<.<.>.<<.>>.<.>.<---.+++...>.<.>.<.>.<---.+++...>>>>.<<
<<<.>>>>>+.<<<<<...>---.+++.>>>.<<<---.+++.>>>.<<<<.>---.+++...>>>.<<.
<.>.<<..>>.<.>.<---.+++..>>>>+++.<<<<.>>>>----.<<<<.>>>>+.<<.<<<......
..............>>.>>.<.
captncraig
sumber
Perhatikan bahwa kode ini tampaknya mengasumsikan sel 8-bit; Saya pertama kali mencobanya pada penerjemah dengan sel 32-bit, dan macet di [<---->---]baris pertama. (Mungkin akhirnya akan selesai, tetapi saya tidak menunggu cukup lama untuk itu.)
Ilmari Karonen
24
Bagaimana Anda menulis ini dalam dua jam?
Joey Adams
sepertinya Anda menyimpan `') (, / | V_ \ n pada sel pertama dan mereka Anda hanya bolak-balik mencetak char yang diperlukan (penghasil teks BF Dev?). Kerja bagus BTW
JBernardo
Itu tergantung pada sel pembungkus 8 bit. Menyimpan beberapa karakter umum seperti yang Anda katakan, tetapi tidak semua. Juga apakah hal-hal seperti beralih antara '\' dan '_' dalam satu sel di mana mereka cukup dekat untuk melakukannya.
captncraig
@JBernardo, generator teks dev BF memberikan kode jauh lebih besar dari ini. Butuh generator yang jauh lebih rumit untuk mengalahkan ini saya pikir.
captncraig
9

Python (2.x), 194 karakter

print'eNo9T8ENxCAMe5cp/DsqVco2fSH5BsnwZ4ccEIhxbAIgAK9KvDRwGBEjsSfJA6r2N7EISbmrpbLNKFRYOABaC6FAEYkPW/Ztm1t7Z1S3ydtHuV4ooolEV6vPyJ2XH8kGE7d9DAVMhFUte6h7xv5rxg8sf0Qc'.decode('base64').decode('zip')
tzot
sumber
2
Jawaban ini hanya membuat hari saya xD. Saya tidak akan pernah berpikir saya akan melihat codegolf yang benar-benar menggunakan zip & base64 untuk mengurangi ukuran string
daboross
4

Javascript, 273 265 264 karakter

" _2_22_ _2222222226_26_ _10 0 3_0 | 3_2 32233_6_ 30 30 |10_0/ _ 4 0/ _ 424 4 /4 / / _ 4| '30/ _` 01|6_6|63/ 0 (_) |24 V6V / (_) 060 (_0_|1|_0_|43_|_543_( )24_/4_/ 43_/56543,_(_)12222226|/".replace(/\d/g,function(a){return'| |,\n,   ,__,\\,|_|,  '.split(',')[a]})

:(

JiminP
sumber
Hemat ruang setelah return, -1 char :)
pimvdb
4

Jawaban ini lebih panjang dari sekedar mencetak string; Namun, hanya untuk bersenang-senang, ini dia:

Python, 485 karakter ☺

import sys

data= ',C6UBKq.)U^\\ 8[hHl7gfLFyX6,;p\'SlYpN@K-`Kbs#fSU+4o~^_h\\dJDy{o9p?<GnLTgG{?ZM>bJE+"[kHm7EavoGcS#AQ^\\>e_'
table= " _|\\/(\n)V'`,"
key= (0,(1,((((7,5),(6,(8,(11,(9,10))))),(4,3)),2)))

number= 0
for char in data:
    number= number*95 + ord(char) - 32

mask= 1<<655
decoder= key
while mask:
    index= mask & number and 1
    try:
        decoder= decoder[index]
    except TypeError:
        sys.stdout.write(table[decoder])
        decoder= key[index]
    mask>>= 1

Karena saya memiliki salah satu representasi ASCII terpendek dari teks asli terkompresi, saya harus memiliki scrollbar terpanjang dalam kode saya! Ini kemenangan! :)

tzot
sumber
4
AKA "scrollbar saya lebih panjang dari milikmu"
tzot
Solusi ini dapat diturunkan hingga 254 karakter. Apakah Anda keberatan jika saya mengedit dalam versi yang lebih pendek?
han
@han: Tentu saja jumlah karakter dapat dikurangi; Namun, saya tidak menulis yang ini sebagai kandidat serius. Jadi biarkan yang ini dipilih karena kemampuannya sendiri, dan tulis jawaban lain menggunakan sebanyak atau sesedikit mungkin dari jawaban ini :)
tzot
Terima kasih, saya akan lulus kecuali orang lain benar-benar tertarik. Saya hanya ingin menunjukkan bahwa solusi ini dapat dibuat secara signifikan lebih singkat daripada teks aslinya.
han
3

PHP, 194 189 karakter

php -r'=gzinflate(base64_decode("dU/BDcQgDPszhX+lUqVs0xeSb5AMf3ZI+7qDACa2EwABeNXR4M/goxqJPUm+oLinEishKTdbKtuMQsTCC6C1EApUInHIvOlP+9zbO6PaTZ6+ynZDEZ1INFuNRu5z+ZVsMHHax1DAibCqZRdVZ/z6esYX"));'

Ini pada dasarnya sama dengan jawaban Python dan Perl, sedikit lebih pendek

konsolenfreddy
sumber
The php -r'=...'trick tampaknya tidak bekerja untuk saya, tapi Anda hanya bisa menggunakan <?=...untuk 184 karakter. Juga, output Anda tampaknya memiliki ruang ekstra tempat rdan lbertemu.
Ilmari Karonen
OSX 5.3.6 berfungsi dengan baik dengan -r'=..'. apakah php -rtidak menghitung? Ini termasuk dalam 189char saya ...
konsolenfreddy
Secara umum, nama penerjemah tidak masuk hitungan. Untuk opsi baris perintah, aku sudah terjadi oleh meta thread ini ; -rSwitch PHP adalah sesuatu dari kasus batas, karena, selain mengambil kode sebagai parameter dan menjalankannya, ia juga memodifikasi lingkungan parsing sedikit dibandingkan dengan menjalankan kode dari file. Saya cenderung menghitungnya sebagai 2 karakter tambahan - yang kebetulan membuatnya seimbang <?.
Ilmari Karonen
3

Dalam bahasa lain: C (versi asli), 209 karakter ; Perl , 200 karakter .

J, 167 160 karakter (47 + 113)

Pengajuan kompresi tanpa built-in lainnya. Menggunakan pengkodean panjang variabel yang cukup mudah, mengkodekan setiap karakter sebagai serangkaian 1 bit dan memisahkan karakter dengan 0 bit. String yang dikompresi adalah 113 karakter belaka.

('a _|\/',CR,'()V`,'''){~#;.2,(6$2)#:40-~3&u:'8H1(((((H:f[4ZS4ZP2(RPMAMANf[>CZD[F;I[OVFF;TgfS5aGd[7T9JW4[eG[+Of7ddg?d[.AfT]WUASE=S>bSdgI]cS[RWBYSE?gSeG_X(()WG('
FireFly
sumber
2

Python (2.7.x), 218 karakter

import base64,zlib;
print zlib.decompress(base64.b64decode("eNo9T8ENxCAMe5cp/DsqVco2fSH5BsnwZ4ccEIhxbAIgAK9KvDRwGBEjsSfJA6r2N7EISbmrpbLNKFRYOABaC6FAEYkPW/Ztm1t7Z1S3ydtHuV4ooolEV6vPyJ2XH8kGE7d9DAVMhFUte6h7xv5rxg8sf0Qc"))

Cukup mudah ... tidak terlalu senang dengan upaya ini.

Dillon Cower
sumber
2

Bash, 199 196 193 karakter

base64 -d<<<H4sIAAAAAAAAAz1PQQ6AIAw7S+IfelMTk/3GE0l9CI+3HRPYoHQtAxCAMzduGliMiL0NzElygSz+LiYhLWc1VekzDFU6FoCyIxRIYuBgyd7f5+5eGdnv5OWjbA8UUcRAVbORfBN0v5MFTlw2MhQwEVaV7KYu2tv88IgPjUlb7QoBAAA=|zcat

Cukup dekat...

EDIT: Turun ke 193!

Dillon Cower
sumber
1
Bagus. Anda bisa menghemat tiga karakter lainnya mengganti gzip -ddengan zcat.
Ilmari Karonen
3
Menggunakan di mana-string akan menghemat gema.
Peter Taylor
2

bash, 196 192

base64 -d<<<H4sIAO4SqFMCA3VPQQ7AIAi7+4re5pIl/GYnk+4hPH4U0dOmILUUUBCAPEOBn8Wlao65SW6QudWJSYSUM5sqlQlZJAY2QPiAhSEJx8GSPVWm0TppOa3z1DWqboRZEY7K5pzmMw49kgU6TtXRwiDCpCrZxejTvn7u1l5z59MGKQEAAA|zcat
rpax
sumber
1

Perl, 230 karakter

use Compress::Zlib;
use MIME::Base64;
print uncompress(decode_base64('eNo9T8ENxCAMe5cp/DsqVco2fSH5BsnwZ4ccEIhxbAIgAK9KvDRwGBEjsSfJA6r2N7EISbmrpbLNKFRYOABaC6FAEYkPW/Ztm1t7Z1S3ydtHuV4ooolEV6vPyJ2XH8kGE7d9DAVMhFUte6h7xv5rxg8sf0Qc'));

Ini pada dasarnya sama dengan jawaban Python saya. Saya ingin melihat versi 199 karakter .. kedengarannya seperti sulap.

Dillon Cower
sumber
Saya belum akan mempostingnya, tetapi Anda berada di jalur yang benar. Tentu saja, saya agak berharap seseorang akan mengalahkannya dengan pendekatan yang sama sekali berbeda.
Ilmari Karonen
1

Perl, 294 290 byte.

String yang dikompresi sendiri, adalah 151 130 byte

Ini tidak pendek, tetapi sangat menyenangkan untuk menulis.

@t=split//,"_|\\/\n()V',`";$b.=substr unpack("B8",chr(-48+ord)),2,6 for split//,'Ph?`@Ooooo1l410````0066600?03l0001PP06600HHB1Q064L4D<8h8^::<DLL4@J0032>1D<90h<>00hHI@6QhYllLX3@`hHI@1Q04P@1Q04@002080R001I^80a074001Q07208P0B0X34ooo`ST';$b=~s/(1)|(0.{4})/$1?" ":$t[ord pack"B8","000$2"]/eg;print$b

@t=split//," _|x"x4 ."\\/\n()V',`";$b.=substr unpack("B8",chr(-48+ord)),2,6 for split//,'4100A0000000001017:8R5HR5@1@05E15R5R;:9Ra4`8\\A<0<30a`<C4C2=URa7PRbP@PG4R<g@P<3D=C4cM288S=RK:HV`EVK1G<d0`LL74`EaV2K1Mg=db0000002ab';$b=~s/1(1.{4})|(..)/$t[ord pack"B8","000".($2?"000$2":$1)]/eg;print$b
pengguna2905252
sumber
1

Perl, 346 byte

String yang dikompresi sendiri, adalah 111 byte.

@t = split//, " _|\\/\n()V',`";
$k=[0,[1,[2,[[3,4],[[5,6],[7,[[8,9],[10,11]]]]]]]];

$b .= substr unpack("B8", chr(-48+ord)), 2, 6 for split//,'@P900000PBlc<b[<bX:0ZXUIUIVlcFKZLI^Y`LLMhjjW<oJcMGncNHS5MIW]l`ho3lMNgc<IW]V]i[=KUF]KUG[hL^l^^EMeSFiGmNggP001^Pl';

$d = $k;
$o.=$d=~/^\d/?$t[$s=$d,$d=$$k[$_],$s]:($d=$$d[$_],"")for split//,$b;
print $o

Mencoba memahami apa yang dilakukan oleh python key= (0,(1,((((7,5),(6,(8,(11,(9,10))))),(4,3)),2))) , saya akhirnya membuat versi perl yang terlihat sangat mirip.

pengguna2905252
sumber
1

PHP 590

jelas, saya tidak mencoba untuk menang, hanya tertarik untuk mencoba skema kompresi lain, meskipun itu bahkan tidak bisa mengalahkan 302 solusi teks PHP sederhana sederhana dari hanya copy-paste

ini berfungsi sebagai bitmap pada 10 saluran

"golf"

<? $l=['_'=>['l8kqo,ei','9uo6,2fko0','52m0w,5r1c','540lc,5maq','lifeo,19i7ai'],'|'=>[0,'1h39j4,105','1h2k8w,q9x','14l2jk,wlx','1h39j4,wlc','1s,0'],'/'=>[2=>'b9c0,n3kao','pa8,18y68','0,mihog','w,0'],'\\'=>[2=>'pc5,a0zy8','2,0','b9c1,am2kg'],'('=>[3=>'e8,b8lc','1s,4'],')'=>[3=>'3k,2t4w','g,1'],'V'=>[3=>'0,18y680'],'`'=>[2=>'0,g'],"'"=>[2=>'0,6bk'],','=>[4=>'0,g'],];$p=@str_pad;$b=@base_convert;$i=-1;while($i++<5){$h=' ';foreach($l as$c=>$r)if(@$r[$i]){$a=explode(',',$r[$i]);$d=str_split($p($b($a[0],36,2),27,0,0).$p($b($a[1],36,2),27,0,0));foreach($d as$j=>$v)$v&&$h[$j]=$c;}echo"$h\n";}

dapat dibaca

<?php
$l = ['_'=>['l8kqo,ei','9uo6,2fko0','52m0w,5r1c','540lc,5maq','lifeo,19i7ai'],
      '|'=>[0,'1h39j4,105','1h2k8w,q9x','14l2jk,wlx','1h39j4,wlc','1s,0'],
      '/'=>[2=>'b9c0,n3kao','pa8,18y68','0,mihog','w,0'],
     '\\'=>[2=>'pc5,a0zy8','2,0','b9c1,am2kg'],
      '('=>[3=>'e8,b8lc','1s,4'],
      ')'=>[3=>'3k,2t4w','g,1'],
      'V'=>[3=>'0,18y680'],
      '`'=>[2=>'0,g'],
      "'"=>[2=>'0,6bk'],
      ','=>[4=>'0,g'],
      ];
$p=@str_pad;
$b=@base_convert;
$i=-1;
while($i++<5){
    $h = str_repeat(' ',54);
    foreach($l as $c=>$r)
        if(@$r[$i]){
        $a = explode(',',$r[$i]);
        $d = str_split($p($b($a[0],36,2),27,0,0).$p($b($a[1],36,2),27,0,0));
        foreach($d as$j=>$v)
            if ($v)
                $h[$j]=$c;
        }
    echo "$h\n";
}
Einacio
sumber
1

Pylongolf2, 300 byte

" _   _      _ _                             _     _ _
| | | | ___| | | ___    __      _____  _ __| | __| | |
| |_| |/ _ \ | |/ _ \   \ \ /\ / / _ \| '__| |/ _` | |
|  _  |  __/ | | (_) |   \ V  V / (_) | |  | | (_| |_|
|_| |_|\___|_|_|\___( )   \_/\_/ \___/|_|  |_|\__,_(_)
                    |/"~

Saya tidak dapat menemukan metode pengkodean yang berkelas, jadi saya mungkin tidak bersaing.


sumber
0

Golf-Basic 84, 325

:"                     "_Str1t` _   _      _ _ "d`Str1d`Str1t`_     _ _"t`| | | | ___| | | ___    __      _____  _ __| | __| | |"t`| |_| |/ _ \ | |/ _ \   \ \ /\ / / _ \| '__| |/ _` | |"t`|  _  |  __/ | | (_) |   \ V  V / (_) | |  | | (_| |_|"t`|_| |_|\___|_|_|\___( )   \_/\_/ \___/|_|  |_|\__,_(_)"t`                    |/"

Dengan asumsi kalkulator dapat mencetak backticks, backslash, pipa tunggal, dan garis bawah.

Timtech
sumber
0

HTML + JS (223 karakter unicode)

Hanya untuk bersenang-senang:

<body onload=p.innerHTML=unescape(escape("π˜Ÿπ˜€ π˜Ÿπ˜€ π˜€ π˜€ π§° π§° π˜€ π˜€ π˜€ π˜€ π˜€ π˜€ π˜€ π˜€ π˜€ π˜€ π˜€ π˜€ π˜€ π˜€ π§° π˜€ π˜€ π§° π§°Šπ―€ π―€ π―€ π―€ π§±Ÿπ§±Όπ˜Όπ˜Όπ˜Ÿπ§±Ÿπ˜€ π˜€ π§±Ÿπ˜€ π˜€ π˜€ π§±Ÿπ§±Ÿπ§° π˜Ÿπ˜Ÿπ§±Όπ˜Όπ˜Ÿπ§±Όπ˜Όπ˜Όπ’‘Όπ˜Όπ§±Όπ˜Όπ›° π§° π§€ π―€ π―€―π˜Ÿπ˜œπ˜€ π˜œπ˜œπ˜€―π§€ π›° π›° π§° π§Όπ˜€§π§±Ÿπ―€ π―€―π˜Ÿπ¨€ π―€ π―€Šπ―€ π˜Ÿπ˜€ π―€ π˜Ÿπ§°―π˜Όπ˜Όπ˜€¨π§°©π˜Όπ˜€ π˜œπ˜–π˜€ π₯  π›° πšŸπš π―€ π―€ π˜Όπ˜Όπ˜€¨π§±Όπ˜Όπ§±Όπ’‘Όπ§±Όπ˜Όπ§±Όπ§Ÿπ§±Ÿπ―Ÿπ―Ÿπ―œπ§±Ÿπ§°¨π˜€©π˜€ π˜œπ§°―π§Ÿπ›° π§Ÿπ§±Ÿπ›±Όπ§±Όπ˜€ π―Ÿπ―œπ§±Ÿπ›ŸπšŸπšŠπ˜€ π˜€ π˜€ π˜€ π˜€ π˜€ π˜€ π˜€ π˜€ π˜€ π―€―").replace(/uD./g,''))><pre id=p>

NB: Anda harus menyimpannya dalam file HTML "UTF-8 with BOM".

xem
sumber
Bagus. Bekerja untuk saya bahkan tanpa BOM (Firefox 26 / Chromium 31), selama penyandian diatur ke UTF-8 atau deteksi otomatis. Sayangnya, itu tidak memenuhi syarat di bawah aturan yang dinyatakan ("program harus seluruhnya terdiri dari karakter ASCII yang dapat dicetak"). :-(
Ilmari Karonen
Saya tahu, itu hanya untuk bersenang-senang;)
xem
0

PowerShell , 220 byes = skrip: 9 + arsip: 211

tar xOf t

Cobalah online!

Skrip Powershell untuk membuat arsip t(lihat TIO):

(
" _   _      _ _                             _     _ _",
"| | | | ___| | | ___    __      _____  _ __| | __| | |",
"| |_| |/ _ \ | |/ _ \   \ \ /\ / / _ \| '__| |/ _` | |",
"|  _  |  __/ | | (_) |   \ V  V / (_) | |  | | (_| |_|",
"|_| |_|\___|_|_|\___( )   \_/\_/ \___/|_|  |_|\__,_(_)",
"                    |/"
) | Set-Content f -Force
tar zcfo t f
Get-ChildItem t # output info about archive size
mazzy
sumber