hari ini (24 September) adalah hari ulang tahun perusahaan HONDA. Awalnya nama perusahaan mereka adalah
本田技研工業株式会社
Saya ingin meminta untuk membuat hadiah untuk HONDA. Tugasnya adalah membuat nama perusahaan program cetak. Anda dapat melakukannya dengan cara apa pun yang Anda inginkan, tetapi hanya ada satu aturan, Unicode tidak diperbolehkan. Seharusnya seni ASCII.
Saya ingin bertanya untuk mengirim kode dan output. Seperti biasa untuk menentukan pemenang, saya akan melihat panjang kode, namun potret dalam kasus ini juga penting.
EDIT: output harus mirip dengan ini:本田技研工業株式会社
'HONDA'
dan mengklaimnya mencetak nama perusahaan di GolfScript? (Saya hanya mencoba menunjukkan beberapa celah). Juga, apakah ini dimaksudkan untuk ditandai sebagai kode-golf ?Unicode is not allowed
dimana? Pada output (terdengar masuk akal)? Sebagai skrip? Sebagai representasi internal dalam skrip Anda?Jawaban:
Mathematica
Di sini karakter diraster secara individual. Angka nol dari data gambar biner dari gambar yang diperkecil kemudian diganti dengan tanda bintang dan array itu sendiri kemudian dicetak.
Di bawah semua karakter dirasterisasi sebagai gambar tunggal. Tanda bintang sedikit lebih sulit dikenali sebagai tanda bintang dalam kasus ini.
sumber
Tcl
Ya, pendekatan yang mungkin gila.
Berikut tangkapan layar:
sumber
本田技研工業株式会社
?研
dan会
tidak terlihat sangat bagus, tetapi semuanya adalah solusi yang baik.JavaScript + HTML, versi interaktif (275 + 90 = 365 karakter)
Banyak ide yang terinspirasi oleh jawaban Austin , tetapi yang ini interaktif; Anda dapat mengubah ukuran font! (juga jumlah karakter sebenarnya benar)
Tangkapan layar
Menekan tombol -dan +mengubah ukuran font. Gambar terpotong, tetapi Anda mendapatkan ide.
Fiddle (coba sendiri!)
Berikut ini adalah JSFiddle tempat Anda dapat menjalankan kode sendiri.
JS, 275
HTML, 90
Versi resolusi tinggi
http://jsfiddle.net/UjTbK/1/
sumber
r=function(h){for(x=document.createElement('canvas').getContext('2d'),x.font=h+'px sans-serif',x.fillText('本田技研工業株式会社',0,h),d=x.getImageData(0,0,w=h*10,h).data,s='',a=0;a<h;a++){for(b=0;b<w;b++)s+=d[3+w*4*a+4*b]?0:' ';s+='\n'}document.getElementById('p').innerHTML=s} (30)
lebih pendek tiga byte.Javascript, 261 karakter, 226 diperkecil
terima kasih khusus kepada jsacii untuk menginspirasi solusi ini.
diperkecil
dan hasilnya
sumber
var
pernyataan darifor
loop dan Anda dapat mengganti (jika Anda mau)"*"
dengan nomor.Java,
267.260karakterBaiklah, saya kira solusi saya tidak jauh berbeda dari jawaban Johannes Kuhn, tetapi sepertinya ini adalah masalah yang dapat ditangani dengan baik di Jawa; solusi saya tidak lebih lama; dan hasilnya sedikit berbeda, saya akan mempostingnya:
Diformat sebagai:
Keluaran:
sumber