Kejahatan bahasa pemrograman esoterik memiliki operasi yang menarik pada nilai byte yang disebutnya "tenun". Ini pada dasarnya adalah permutasi dari delapan bit byte (tidak masalah dari mana kita mulai menghitung, karena polanya simetris):
- Bit 0 dipindahkan ke bit 2
- Bit 1 dipindahkan ke bit 0
- Bit 2 dipindahkan ke bit 4
- Bit 3 dipindahkan ke bit 1
- Bit 4 dipindahkan ke bit 6
- Bit 5 dipindahkan ke bit 3
- Bit 6 dipindahkan ke bit 7
- Bit 7 dipindahkan ke bit 5
Untuk kenyamanan, berikut adalah dua representasi lain dari permutasi. Sebagai sebuah siklus:
(02467531)
Dan sebagai daftar pasangan pemetaan:
[[0,2], [1,0], [2,4], [3,1], [4,6], [5,3], [6,7], [7,5]]
Tugas Anda adalah untuk memvisualisasikan permutasi ini, menggunakan karakter kotak-gambar ─
, │
, ┌
, ┐
, └
, ┘
, ┼
(kode Unicode poin: U + 2500, U + 2502, U + 250C, U + 2510, U + 2514, U + 2518, U + 253C). Visualisasi ini harus memenuhi batasan-batasan berikut:
Baris pertama dan terakhir persis:
0 1 2 3 4 5 6 7
Di antara itu, Anda dapat menggunakan sebanyak mungkin garis yang Anda inginkan masing-masing hingga 15 karakter agar sesuai dengan karakter menggambar kotak Anda (Anda membutuhkan setidaknya 4 baris). Garis harus mulai secara vertikal di bawah salah satu digit di baris pertama dan berakhir secara vertikal di atas angka yang sesuai di baris terakhir. Delapan garis harus terhubung, dan hanya dapat melewati ┼
(yang selalu merupakan persimpangan, tidak pernah dua garis yang saling bersentuhan). Jalur yang tepat dari garis-garis itu terserah Anda (dan menemukan tata letak khusus golf adalah inti dari tantangan ini). Satu output yang valid adalah:
0 1 2 3 4 5 6 7
│ │ └─┼┐│ │ └┐│
└─┼─┐ ││└─┼─┐││
┌─┘ │ ││ │ │││
│ ┌─┼─┘│ │ │││
│ │ │ ┌┼──┘ │││
│ │ │ │└┐ ┌─┼┼┘
│ │ │ │ │ │ │└┐
0 1 2 3 4 5 6 7
Namun, tata letak lain yang menghubungkan dengan benar digit yang tepat juga baik. Tolong tunjukkan hasil pilihan Anda dalam jawaban Anda.
Anda dapat menulis suatu program atau fungsi dan tidak akan mengambil input apa pun. Keluarkan diagram baik ke STDOUT (atau alternatif terdekat) atau sebagai nilai pengembalian fungsi dalam bentuk string atau daftar string (masing-masing mewakili satu baris).
Standar kode-golf aturan berlaku, sehingga kode terpendek (dalam bytes) menang.
01234567
sebagai masukan dan kemudian menghubungkan bahwa ke 01234567
? Jadi Anda harus mencari tahu tautannya sendiri? Ini akan menjadi tugas yang jauh lebih menantang, terutama untuk bermain golf.