Tantangan Anda adalah menulis program untuk menerjemahkan (bahasa Inggris) leetspeak / lolspeak / txtspk ke dalam bahasa Inggris normal. Program Anda harus membaca dari input dan output standar ke output standar, kecuali bahasa Anda tidak mendukungnya.
Anda dapat menggunakan file yang berisi daftar kata-kata dalam bahasa Inggris, dipisahkan oleh baris baru. Itu harus dipanggil W
dan akan berlokasi di direktori yang sama dengan program Anda. (Pada sistem GNU / Linux dan mungkin yang lain, Anda dapat membuat W
tautan ke /usr/share/dict/words
) Daftar ini tidak harus huruf besar semua, Anda dapat menggunakannya untuk menentukan apakah kata-kata harus memiliki huruf besar.
Ini didasarkan pada pertanyaan yang sekarang dihapus yang diposting oleh Nikos M. yang dapat ditemukan di sini . Ini bukan duplikat karena pertanyaan awal ini telah ditutup dan tidak menerima jawaban apa pun, karena tidak ada kriteria menang dan pengguna tidak mau memasukkannya.
Mencetak gol
Skornya sedikit rumit!
nilaimu adalah
(leet items + bonuses) * 10 / (code length)
Kemenangan skor tertinggi.
Program Anda tidak harus dan mungkin tidak bisa sempurna, tetapi semakin akurat, semakin banyak bonus yang didapat!
Karena $
dapat berarti keduanya s
dan S
, Anda mendapatkan bonus 5 poin per item leet untuk memutuskan apakah itu harus memiliki huruf kapital (yaitu huruf kapital di awal kalimat).
Anda mendapatkan bonus lebih lanjut dari 5 poin per item leet untuk menerapkan kata benda yang tepat (kata-kata yang selalu memiliki huruf kapital) - cara kerjanya adalah bahwa Anda akan melihat melalui daftar kata, membuat output dikapitalisasi jika hanya versi huruf kapital hadir di daftar, dan jika kedua versi ada, tebak saja.
Jika karakter memiliki dua makna (mis. 1
Bisa berarti L
atau I
), Anda mendapatkan 20 poin per item leet untuk hanya memilih terjemahan item yang membuat kata-kata bahasa Inggris nyata - gunakan daftar kata untuk ini. Jika lebih dari satu terjemahan item leet menghasilkan kata bahasa Inggris yang nyata, Anda dapat secara sewenang-wenang memilih salah satu terjemahan yang valid dan masih mendapatkan bonus.
Daftar Leet
Ini adalah item leet yang dapat Anda terapkan. Anda tidak harus menerapkan semuanya, tetapi semakin banyak Anda tambahkan, semakin banyak poin yang Anda dapatkan.
Anda tidak dapat mencetak poin dengan menerjemahkan item atau karakter ke dirinya sendiri. Aturan ini mengesampingkan kesalahan yang mungkin saya buat dalam daftar.
Sangat menggoda untuk melakukan hal yang sederhana tr
atau s/.../.../g
. Tantangan sebenarnya adalah menentukan mana dari banyak makna yang bisa dan tidak bisa benar, menggunakan daftar kata.
Item Leet (masing-masing menambahkan 1 ke leet items
dalam rumus)
$ -> s, S (-> c, C 5 -> s, S @ -> a, A 4 -> a, A 3 -> e, E 7 -> t, T + -> t, T # -> h, H teh -> itu 'd -> ed pwnd -> pwned pwnt -> pwned k, K -> OK kk -> OK 0 [nol] -> o, O y, Y -> mengapa 4 -> untuk txt -> teks dafuq -> apa yang f ** k / \, ^ -> a, A \ / -> v, V d00d -> dude n00b -> pemula \ / \ / -> w, W 8 -> b, B | _ | -> u, U | - | -> h, H Я -> r, R j00 -> Anda joo -> kamu vv, VV -> w, W tomoz -> besok | <-> k, K [), |) -> d, D <3 -> cinta > <-> x, X 10100111001 -> leet (representasi biner 1337) 2 -> juga ur, UR -> Anda, Anda (tidak perlu membedakan keduanya dengan benar) kamu, kamu -> kamu 8 -> -ate-, 8 x, X -> -ks -, - cks- z, Z -> s, S 1 -> i, I, l, L ! -> saya, saya ,! c, C -> see, C, sea b, B -> be, B, bee [surat beraksen] -> [formulir tidak beraksen] (skor 1 per huruf beraksen didukung) &, 7 -> dan, anned, semut (dapat digunakan di tengah kata)
Harder "Leet": skor 30 poin untuk leet items
masing - masing
!!! 1 !! 1-> !!!!!!! (terjemahkan 1 dalam urutan! menjadi!) !!! satu! -> !!!!! ! sebelas-> !!!
Contohnya
Ini adalah contoh dari apa yang bisa dilakukan oleh program yang menerapkan semua karakter leet di atas, dan beberapa bonus,:
Contoh kalimat: |-|3 15 $|_|(# @ n00b
=He is such a newbie
Sensor berbasis leet: $#!+
=s**t
Leet ekstrem: \/\/ 1 |< 1 P 3 [) 1 A
=Wikipedia
-xor suffix: H4X0R
=hacker
Leet yang lebih ekstrem: @1\/\/4Y5 p0$+ ur n3VV qu35710nz 1n teh $&80x
=Always post your new questions in the sandbox
Contoh Pemberian Skor
Bash, 10 karakter, 3 item, tidak ada bonus:
tr 137 let
Skor ini ( 1 * 3 ) * 10 / 10 = 3
.
tr
atau s/.../.../g
. Hanya menerjemahkan hal-hal seperti itu akan membuat tantangan yang membosankan, jadi kita perlu menghargai terjemahan yang lebih baik yang menggunakan daftar kata
sed
naskah.)
sed
skrip, maksud saya lebih dari sekadar sederhana s/.../.../g
, tetapi sebuah file yang diuraikan dan dijalankan dengan sed
sendirinya. Sekecil apa pun bahasanya, itu mungkin bahasa golf yang layak ...
sed
skrip juga baik dan bisa sangat menarik, mereka bisa melakukannya dengan sangat baik karena sintaksis substitusi pendek, Anda mungkin dapat membaca dari daftar kata, baik dengan ekstensi GNU atau dengan menggunakan sed
sebagai bagian dari program Bash yang lebih besar