I-Ching memasangkan komputer biner

10

pengantar

I Ching adalah teks ramalan kuno dan tertua dari klasik Tiongkok. Ia menggunakan jenis ramalan yang disebut cleromancy, yang menghasilkan angka-angka acak.

Unit dasar Zhou yi adalah heksagram (卦 guà), sosok yang terdiri dari enam garis horizontal bertumpuk (爻 yáo). Setiap baris rusak atau tidak terputus. Teks yang diterima dari Zhou yi berisi semua 64 hexagram yang mungkin

Urutan Raja Wen menyajikan 64 heksagram, dikelompokkan menjadi 32 pasangan. Untuk 28 pasangan, heksagram kedua dibuat dengan memutar terbalik pertama (yaitu rotasi 180 °). Pengecualian untuk aturan ini adalah untuk hexagram simetris yang sama setelah rotasi. Mitra untuk ini diberikan dengan membalik setiap baris: padat menjadi patah dan patah menjadi padat.

 ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄      ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄ ▄▄▄
 ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄      ▄▄▄▄▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄
 ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄ ▄▄▄      ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄ ▄▄▄
 ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄ ▄▄▄      ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄ ▄▄▄
 ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄      ▄▄▄▄▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄
 ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄      ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄ ▄▄▄
    1        2        3        4            5        6        7        8   

 ▄▄▄▄▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄      ▄▄▄▄▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄ ▄▄▄
 ▄▄▄▄▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄      ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄ ▄▄▄
 ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄      ▄▄▄▄▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄
 ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄      ▄▄▄▄▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄
 ▄▄▄▄▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄      ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄ ▄▄▄
 ▄▄▄▄▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄      ▄▄▄▄▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄ ▄▄▄
    9       10       11       12           13       14       15       16   

 ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄      ▄▄▄▄▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄
 ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄      ▄▄▄ ▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄ ▄▄▄
 ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄ ▄▄▄      ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄ ▄▄▄
 ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄ ▄▄▄      ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄ ▄▄▄
 ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄      ▄▄▄ ▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄ ▄▄▄
 ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄      ▄▄▄▄▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄
   17       18       19       20           21       22       23       24   

 ▄▄▄▄▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄      ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄ ▄▄▄
 ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄      ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄
 ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄      ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄▄▄▄▄
 ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄      ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄▄▄▄▄
 ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄      ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄
 ▄▄▄▄▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄      ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄ ▄▄▄
   25       26       27       28           29       30       31       32   

 ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄      ▄▄▄▄▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄ ▄▄▄
 ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄ ▄▄▄      ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄
 ▄▄▄▄▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄      ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄
 ▄▄▄▄▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄      ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄
 ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄ ▄▄▄      ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄
 ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄      ▄▄▄▄▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄ ▄▄▄
   33       34       35       36           37       38       39       40   

 ▄▄▄▄▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄      ▄▄▄ ▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄ ▄▄▄
 ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄▄▄▄▄      ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄▄▄▄▄
 ▄▄▄ ▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄▄▄▄▄      ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄
 ▄▄▄ ▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄▄▄▄▄      ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄
 ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄▄▄▄▄      ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄▄▄▄▄
 ▄▄▄▄▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄      ▄▄▄ ▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄ ▄▄▄
   41       42       43       44           45       46       47       48   

 ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄      ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄
 ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄ ▄▄▄      ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄ ▄▄▄
 ▄▄▄▄▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄      ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄▄▄▄▄
 ▄▄▄▄▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄      ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄▄▄▄▄
 ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄ ▄▄▄      ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄ ▄▄▄
 ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄      ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄
   49       50       51       52           53       54       55       56   

 ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄      ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄
 ▄▄▄▄▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄▄▄▄▄      ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄
 ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄ ▄▄▄      ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄
 ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄ ▄▄▄      ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄
 ▄▄▄▄▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄▄▄▄▄      ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄
 ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄      ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄
   57       58       59       60           61       62       63       64   

Permintaan

Tujuannya adalah membuat alat kecil yang menghitung pasangan untuk nilai heksagram yang diberikan.

  • Untuk menerjemahkan ini ke dalam biner, saya menggunakan:, broken line = 0, unbroken line = 1begitu hexagram Number 1juga binary value 63.

  • Alat mengambil tepat satu argumen, angka antara 1 hingga 64, sebagai permintaan pasangan heksagram dan menghasilkan dua exagram yang berisi angka yang diminta dan oposite- nya (penjelasan: jika arg aneh, output harus berisi heksagram dari arg dan arg + 1 , tetapi jika arg bahkan, output harus mengandung heksagram dari arg - 1 dan arg ).

  • Alat harus diputar dengan heksagram 180 ° yang diminta tanpa simetris , atau membalikkannya saat simetri .

  • Tidak ada peta yang diotorisasi kecuali yang ini, yang dapat disimpan dalam bentuk apa pun yang menurut Anda berguna

     {  1:63,    3:34,    5:58,    7:16,    9:59,   11:56,   13:47,   15: 8,  
       17:38,   19:48,   21:37,   23: 1,   25:39,   27:33,   29:18,   31:14,  
       33:15,   35: 5,   37:43,   39:10,   41:49,   43:62,   45: 6,   47:22,  
       49:46,   51:36,   53:11,   55:44,   57:27,   59:19,   61:51,   63:42 }
    

    Peta ini menyimpan nilai biner dari setiap exagram pertama dari pasangan. Jadi untuk setiap pasangan, yang pertama harus diambil dari peta ini, tetapi yang kedua harus dihitung sesuai dengan aturan sebelumnya.

  • Ouput harus berisi dua heksagram dan nomor-nomornya. Sampel:

    iChingHexaPair 1
     ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄
     ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄
     ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄
     ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄
     ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄
     ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄
        1        2   
    
    iChingHexaPair 14
     ▄▄▄▄▄▄▄  ▄▄▄▄▄▄▄
     ▄▄▄▄▄▄▄  ▄▄▄ ▄▄▄
     ▄▄▄▄▄▄▄  ▄▄▄▄▄▄▄
     ▄▄▄▄▄▄▄  ▄▄▄▄▄▄▄
     ▄▄▄ ▄▄▄  ▄▄▄▄▄▄▄
     ▄▄▄▄▄▄▄  ▄▄▄▄▄▄▄
       13       14   
    
  • Celah standar berlaku

  • Harap hindari bahasa yang tidak bebas atau hasil tulisan untuk kasus uji penuh.

Ini adalah , jadi jawaban terpendek dalam karakter menang.

Singkat menurut bahasa

F. Hauri
sumber
Terkait samar-samar.
Martin Ender
@ MartinBüttner Ya, terima kasih! Mungkin kita dapat menambahkan tag: i-ching (saya tidak membocorkannya saat mencari I-Ching, hexagram, dan sebagainya) Tetapi pertanyaan saya jika lebih lanjut tentangrotating binary by 180°
F. Hauri
2
Perhatikan bahwa saat ini celah standar tentang bahasa yang tidak bebas hanya berlaku untuk tantangan polisi dan perampok .
Alex A.
@ AlexA.Question dimodifikasi: non-bebas bahasa tidak menyambut tapi tidak forbiden, sampel output diperlukan untuk non-bebas bahasa.
F. Hauri

Jawaban:

4

Python 2, 65 61

Menghasilkan pasangan heksagram I-Ching unicode

def t(a):
 b=a+a%2
 for c in b-1,b:
  print unichr(19903+c),c

(disimpan 4 berkat @ Sherlock9)

Contoh input dan output:

>>> t(1)
䷀ 1
䷁ 2
>>> t(14)
䷌ 13
䷍ 14
Willem
sumber
1
Saya pikir Anda dapat menyimpan 4 byte denganb=a+a%2
Sherlock9
Itu celah: tidak ada kalkulator biner!
F. Hauri
@ F. Hauri: Tidak dikatakan harus ada satu pertanyaan sama sekali.
Deusovi
@Deusovi (1) Dalam judul, (2) di baris pertama dari permintaan, (3) Setidaknya, itu melanggar aturan keempat: 1st has to be taken from this map!
F. Hauri
1
@ F: Anda mengatakan tujuannya adalah untuk menghitung pasangan tetapi kemudian Anda hanya perlu menampilkan pasangan heksagram. 'Tabel' dibuat menjadi Unicode alih-alih dalam file teks - apa yang salah dengan itu?
Deusovi
3

Python 2, 252 245 244

Sekarang termasuk perhitungan biner (menyimpan 8 karakter berkat @ Sherlock9):

d='?":\x10;8/\x08&0%\x01\'!\x12\x0e\x0f\x05+\n1>\x06\x16.$\x0b,\x1b\x133*'
k=lambda l:'\n'.join("{:06b}".format(l)).replace('1',u'▄▄▄▄▄▄▄').replace('0',u'▄▄▄ ▄▄▄')
def t(a):
 j=a+a%2-1;m=ord(d[j/2]);b=k(m);r=b[::-1];print b,j,'\n\n',r if r!=b else k(63-m),j+1

Contoh input dan output:

>>> t(1)
▄▄▄▄▄▄▄
▄▄▄▄▄▄▄
▄▄▄▄▄▄▄
▄▄▄▄▄▄▄
▄▄▄▄▄▄▄
▄▄▄▄▄▄▄ 1 

▄▄▄ ▄▄▄
▄▄▄ ▄▄▄
▄▄▄ ▄▄▄
▄▄▄ ▄▄▄
▄▄▄ ▄▄▄
▄▄▄ ▄▄▄ 2
>>> t(3)
▄▄▄▄▄▄▄
▄▄▄ ▄▄▄
▄▄▄ ▄▄▄
▄▄▄ ▄▄▄
▄▄▄▄▄▄▄
▄▄▄ ▄▄▄ 3 

▄▄▄ ▄▄▄
▄▄▄▄▄▄▄
▄▄▄ ▄▄▄
▄▄▄ ▄▄▄
▄▄▄ ▄▄▄
▄▄▄▄▄▄▄ 4
Willem
sumber
1
Anda dapat berubah j=a+a%2-1menjadi j=a-1, karena Anda menggunakan divisi integer, tetapi Anda harus menggunakan j+1dan j+2dalam pernyataan cetak di bagian akhir. Itu masih menghemat 2 byte. Juga menggunakan m=ord(d[j/2]);dan mdi dua tempat yang Anda panggil k()akan menghemat 6 byte. Juga, adalah yang pertama 0di "{0:06b}".format(l)benar-benar diperlukan? Jika tidak, itu byte lain. Akhirnya, jika Anda beralih ke Python 3, Anda dapat menyingkirkan huruf us di depannya ▄▄▄▄▄▄▄, tetapi cetakan akan membutuhkan tanda kurung, jadi itu hanya satu byte lagi. Saya akan membuat Anda diposting pada hal lain yang saya pikirkan.
Sherlock9
Sayangnya saya tidak bisa mengubah j=a+a%2-1untuk j=a-1sebagaimana mestinya output pasang 13 dan 14 ketika saya masukan 14. Terima kasih untuk saran Anda
Willem
Ah kamu benar Kebetulan, saya mengalami kesulitan menjalankan kode ini di Ideone. Bisakah Anda melihatnya? ideone.com/GdWu4e
Sherlock9
@ Sherlock9 Ideone tampaknya mengalami masalah dengan karakter unicode ideone.com/FeK1rK
Willem
1
Ah terima kasih. Untuk menyimpan byte lain, saya akan menulis def t(a):j=a+a%2-1;etc.. Letakkan semuanya satu baris, pada dasarnya. Dan Anda dapat menulis k=lambda l:untuk menyimpan byte lain.
Sherlock9
2

Bash murni 252

u=(▅▅▅{' ',▅}▅▅▅);m=_yWgXUL8CMB1Dxief5HaN@6mKAbIrjPG;s=$[($1-1)/2];r=$[64#${m:s:1}];for i in {0..5};do echo ${u[(r>>i)&1]} ${u[((r>>5)%2==r%2)&((r>>4)%2==(r>>1)%2)&((r>>3)%2==(r>>2)%2)?1^(r>>i)&1:(r>>(5-i))&1]};done;echo $[s*2+1] $[s*2+2]

dengan 2 linebreak lagi:

u=(▅▅▅{' ',▅}▅▅▅);m=_yWgXUL8CMB1Dxief5HaN@6mKAbIrjPG;s=$[($1-1)/2];r=$[64#${m:s
:1}];for i in {0..5};do echo ${u[(r>>i)&1]} ${u[((r>>5)%2==r%2)&((r>>4)%2==(r>>
1)%2)&((r>>3)%2==(r>>2)%2)?1^(r>>i)&1:(r>>(5-i))&1]};done;echo $[s*2+1] $[s*2+2]

Tes:

for k in 1 15 28 34;do set -- $k;echo request: $k;
u=(▅▅▅{' ',▅}▅▅▅);m=_yWgXUL8CMB1Dxief5HaN@6mKAbIrjPG;s=$[($1-1)/2];r=$[64#${m:s
:1}];for i in {0..5};do echo ${u[(r>>i)&1]} ${u[((r>>5)%2==r%2)&((r>>4)%2==(r>>
1)%2)&((r>>3)%2==(r>>2)%2)?1^(r>>i)&1:(r>>(5-i))&1]};done;echo $[s*2+1] $[s*2+2]
done;echo $[s*2+1] $[s*2+2]; done
request: 1
▅▅▅▅▅▅▅ ▅▅▅ ▅▅▅
▅▅▅▅▅▅▅ ▅▅▅ ▅▅▅
▅▅▅▅▅▅▅ ▅▅▅ ▅▅▅
▅▅▅▅▅▅▅ ▅▅▅ ▅▅▅
▅▅▅▅▅▅▅ ▅▅▅ ▅▅▅
▅▅▅▅▅▅▅ ▅▅▅ ▅▅▅
1 2
request: 15
▅▅▅ ▅▅▅ ▅▅▅ ▅▅▅
▅▅▅ ▅▅▅ ▅▅▅ ▅▅▅
▅▅▅ ▅▅▅ ▅▅▅▅▅▅▅
▅▅▅▅▅▅▅ ▅▅▅ ▅▅▅
▅▅▅ ▅▅▅ ▅▅▅ ▅▅▅
▅▅▅ ▅▅▅ ▅▅▅ ▅▅▅
15 16
request: 28
▅▅▅▅▅▅▅ ▅▅▅ ▅▅▅
▅▅▅ ▅▅▅ ▅▅▅▅▅▅▅
▅▅▅ ▅▅▅ ▅▅▅▅▅▅▅
▅▅▅ ▅▅▅ ▅▅▅▅▅▅▅
▅▅▅ ▅▅▅ ▅▅▅▅▅▅▅
▅▅▅▅▅▅▅ ▅▅▅ ▅▅▅
27 28
request: 34
▅▅▅▅▅▅▅ ▅▅▅ ▅▅▅
▅▅▅▅▅▅▅ ▅▅▅ ▅▅▅
▅▅▅▅▅▅▅ ▅▅▅▅▅▅▅
▅▅▅▅▅▅▅ ▅▅▅▅▅▅▅
▅▅▅ ▅▅▅ ▅▅▅▅▅▅▅
▅▅▅ ▅▅▅ ▅▅▅▅▅▅▅
33 34
F. Hauri
sumber