Hasilkan tim ASCII art sepakbola berikut dengan jumlah byte sesedikit mungkin.
|.| |.| |.| |.| |.| |.| |.| |.|
]^[ ]^[ ]^[ ]^[ ]^[ ]^[ ]^[ ]^[
/~`-'~\ /~`-'~\ /~`-'~\ /~`-'~\ /~`-'~\ /~`-'~\ /~`-'~\ /~`-'~\
{<| 8 |>}{<| 6 |>}{<| 1 |>}{<| 3 |>}{<| 7 |>}{<| 5 |>}{<| 4 |>}{<| 2 |>}
\|___|/ \|___|/ \|___|/ \|___|/ \|___|/ \|___|/ \|___|/ \|___|/
/ \ / \ / \ / \ / \ / \ / \ / \
/__|__\ /__|__\ /__|__\ /__|__\ /__|__\ /__|__\ /__|__\ /__|__\
| / \ | | / \ | | / \ | | / \ | | / \ | | / \ | | / \ | | / \ |
(/ \) (/ \) (/ \) (/ \) (/ \) (/ \) (/ \) (/ \)
|) (| |) (| |) (| |) (| |) (| |) (| |) (| |) (|
(.|,.,|,)(,|,.,|.)(.|,.,|,)(,|,.,|.)(.|,.,|,)(,|,.,|.)(.|,.,|,)(,|,.,|.)
Perhatikan bahwa kaki pemain bergantian antara (.|,.,|,)
dan cerminnya, tetapi mata mereka semua menunjuk ke arah yang sama `-'
.
Skor
Jumlah byte terkecil menang!
Aturan
- Lubang loop standar berlaku
- Berapapun jumlah / jejak ruang putih legal.
Jawaban:
Arang ,
1069592917977 byteCobalah online!Sunting: Disimpan 11 byte dengan mengulangi nomor-nomor baju. Disimpan 3 byte dengan mengetahui caraJ
kerjanya. Menyimpan byte lebih lanjut dengan menggunakan instruksi mirror terpisah. Disimpan 12 byte berkat @ ASCII-only dengan mengompresi string setengah pemain. Disimpan 2 byte dengan mengulangi cermin dalam satu lingkaran. Penjelasan:Sunting: Kode di atas tidak lagi berfungsi di Charcoal saat ini; kompresi string tampaknya telah berubah dan perintah reflect sekarang menerima multidirection dan meninggalkan kursor di posisi yang berbeda. Namun dimungkinkan untuk mengadaptasi kode untuk berjalan di arang saat ini untuk jumlah byte yang sama. Cobalah online! Tautan adalah untuk mengucapkan versi kode. (Perhatikan bahwa deverbosifier mencoba untuk mengompres
6137542
karena beberapa alasan meskipun tidak perlu.) Kemudian dimungkinkan untuk memigrasikan byte lebih jauh. Cobalah online! Tautan adalah untuk mengucapkan versi kode.sumber
-sl
hanya untuk menunjukkan panjang, yang dapat ditinggalkan'
, tapi untungnya saya melihat kesalahan sebelum menyimpan hasil edit.Brainf ** k,
855852 byteItu terlalu lama ...
Penjelasan:
sumber
*
yang menambah 3 byte, jadi byte Anda saat ini seharusnya 852. 2. Anda dapat menggantinya[-]
dengan,
, karena beberapa penerjemah di luar sana tidak ada lagi keluaran input0x00
V , 127 byte
Cobalah online!
Seperti biasa, ini hexdump:
sumber
SOGL ,
92888785 bytePenjelasan:
String yang dikompresi adalah
dengan tanda hubung (karena itu dapat dikompresi dengan boxstrings) di tempat karakter yang tidak biasa, yang kemudian diganti dan kemudian dibagi dalam garis untuk mendapatkan
sumber
JavaScript (ES6),
196194214210204 byteGolf pagi hari di ponsel saya lagi, jadi ada ruang untuk perbaikan.
Harus mengorbankan beberapa byte memperbaiki kaki yang saya tidak perhatikan bergantian.
Cobalah
(Sudah kedaluwarsa) Penjelasan
Kami mulai dengan string yang berisi karakter untuk pemain tunggal dengan setiap baris dipisahkan oleh
n
, a0
sebagai penampung untuk nomor dan dengan1
&2
digunakan sebagai penampung untuk tanda baca di kaki bergantian.Kami membagi string ke array dari setiap baris
n
, memetakan atas array yang mengganti setiap elemen dengan dirinya sendiri diulang 8 kali dan kemudian bergabung dengan array ke string menggunakan baris baru secara literal.Akhirnya, kami mengganti setiap angka dalam string dengan nomor pemain yang diperlukan jika nomor tersebut
0
atau karakter yang diperlukan untuk melengkapi kaki pemain jika jumlahnya adalah1
atau2
.sumber
Ruby, 161
Sekarang dengan kaki bergantian. Secara internal ia menghasilkan 8 set kaki ganda (total 16). Beberapa di antaranya kemudian dihapus dengan memotong hingga 72 karakter per baris.
Ruby, 144
Cukup sederhana, mencetak baris demi baris, 8 pemain sepakbola parsial sekaligus dan menggunakan
%
operator (sepertisprintf
) untuk mengganti nomor kaos (ketika string tidak mengandung%d
mereka diabaikan).sumber
Java,
391444 byteEDIT: Benar-benar diperbaiki. Ya Tuhan, itu benar-benar membuat ukurannya naik
Diperluas
sumber
i%2>0
menghemat satu byte, bahkan mungkini++%2>0
berfungsi. Pokoknya kondisi dapat dimasukkan ke dalam ternary di dalamprint(...)
. Membuat array di header loop juga harus menyimpan satu atau dua byte. Saya tidak begitu yakin tetapi saya pikir ada beberapa spasi kosong yang hilang pada baris terakhir dari kaki ...class B{int i;void p(String s){System.out.print(s);}void e(String s){for(i=8;i-->0;)p(s);p("\n");}void a(){e(" |.| ");e(" ]^[ ");e(" /~`-'~\\ ");for(int i:new int[]{8,6,1,3,7,5,4,2})p("{<| " + i + " |>}");p("\n");e(" \\|___|/ ");e(" / \\ ");e(" /__|__\\ ");e(" | / \\ | ");e(" (/ \\) ");e(" |) (| ");for(i=8;i-->0;)p(i%2<1?"(,|,.,|.)":"(.|,.,|,)");}}
"hanya" 366 byte. Hati-hati terhadap salinan / pasta: perangkat lunak SE menambahkan beberapa karakter untuk membagi rantai. Komentar: memperbaiki kaki, kepala, dll.class B{...}
dapat dihapus juga (yang juga sangat berguna tanpamain
-metode). Selain itu, Anda dapat terus menurunkan kode dalam komentar Anda dengan mengubahvoid p(String s){System.out.print(s);}
ke<T>void p(T x){System.out.print(x);}
.05AB1E ,
126124108106110 byteTerima kasih kepada Emigna untuk menghemat 7 byte!
Menggunakan penyandian 05AB1E . Cobalah online!
sumber
JavaScript (ES6),
198197 byteTermasuk jeda baris terkemuka.
Demo
Tampilkan cuplikan kode
sumber
Python 2.7, 179 byte
Encode satu pemain sebagai string tunggal dengan karakter out-of-band untuk membiarkan kami membaginya menjadi daftar, sehingga kita dapat mengalikan setiap layer dengan 8 dan akhirnya memasukkan angka dan tanda baca yang diperlukan ke dalam output.
sumber
Python 2 ,
207197186 186byteCobalah online!
Tidak ada yang sangat pintar dan terlalu lama pada
207197tetapi sejauh yang saya bisa lihat, setidaknya itu mencetak kaki dengan benar.Sunting Sedikit lebih baik pada 186
Sunting 2 Kembali ke lebih dari 200 setelah mengetahui mengapa kaki itu ternyata tidak benar. Gotcha yang tersembunyi dengan baik!
sumber
PHP, 204 Bytes
Cobalah online!
PHP, 205 Bytes
Cobalah online!
PHP, 211 Bytes
Cobalah online!
sumber
[+$i]
tidak perlu+
.for(;$y++<11;)for($p=print"\n";$n=_86137542[$p++];)
dan[$y-1]
+
for(;$y++<11;)for($p=print"\n";$n=_86137542[$p++];)echo str_pad(["|.|","]^[","/~``-'~\\","{<| $n |>}","\|___|/","/ \\","/__|__\\","| / \ |","(/ \)","|) (|",$p&1?"(,|,.,|.)":"(.|,.,|,)"][$y-1],9," ",2);
)foreach
; itu sebabnya saya tidak perlu+
.Ook! , 8519 byte
Saya harus.
Port of tony200910041's brainf ** k jawab
sumber
C #, 420 byte
Golf:
Diperluas:
Terinspirasi oleh jawaban Java Jesse M, dengan beberapa pengeditan untuk membuatnya lebih pendek
sumber
i%2
alih - alih(i%2==0)
dan membalikkan?:
bagian - bagiannya. Saya juga berpikirWrite(" {0} ",s);
dan memotong ruang putih dariX()
panggilan akan menghemat 10 byte lagi.X
metode dan hanya mengulang, saya percaya setidaknya. Anda bisa mengkompilasi keAction<string>
untuk menghapus bulu. Itu berarti Anda mengembalikan astring
dan tidak harus menuliskannya menghapus kebutuhan untukConsole
. Anda dapat menghapususing System
karena itu hanya diperlukan untukString
tempat Anda dapat menggunakannyastring
. Ada beberapa perbaikan lainnya juga. Maaf, tapi sepertinya Anda tidak mencoba bermain golf sebanyak ini.Mathematica 282 byte
sumber
Retina , 270 byte
Cobalah online!
sumber
Bubblegum ,
130117 byteCobalah online!
sumber
Perl 5 , 206 byte
Cobalah online!
Ini kekuatan yang buruk dan kasar, tetapi berhasil.
sumber