Gambar urutan Recamán dengan ASCII


12

Urutan Recamán ( A005132 ) adalah urutan matematika, didefinisikan sebagai:

A(n)={0if n=0A(n1)nif A(n1)n is positive and not already in the sequenceA(n1)+notherwise

Alternatif, penjelasan verbal yang lebih sederhana adalah sebagai berikut:

Kurangi kecuali Anda tidak bisa (jumlahnya negatif, atau telah digunakan sebelumnya), dalam hal ini tambahkan.

Beberapa istilah pertama adalah 0,1,3,6,2,7,13,20,12,21,11

Sekarang, sudah ada tantangan ini yang meminta Anda untuk menghasilkan nistilah urutan ke-5. Yang ini sedikit berbeda.

Tantangan

Diberi nomor n, gambarkan nsyarat pertama dari urutan tersebut. Apa yang saya maksud dengan 'menggambar'? Biarkan saya menunjukkan:

  1. max([A(y) for y<=n])nA(1)=0A(2)=1A(3)=3A(4)=6A(5)=26

______

  1. Mulailah dengan transisi antara suku pertama dan kedua: yaitu, 0 dan 1. Gunakan |dan -untuk menggambar kotak (panjang dan tinggi yang sama), naik ke atas. Dalam hal ini, kita harus kehilangan -karena jaraknya hanya 1.
||
______
  1. A(2)=1A(3)=3
||
______
 | |
 |-|

Seperti yang Anda lihat, garis ini juga memiliki ketinggian 2, karena ketinggiannya harus sama dengan jarak antara kedua suku.

Jika kita melanjutkan, pada akhirnya kita akan sampai ke:

   |--|
   |  |
|| |  |
______
 |||  |
 |||  |
  |   |
  |---|

Aturan

  • Jika ada -dan |bertabrakan, yang berikutnya akan diprioritaskan.
  • Mungkin ada preceeding / membuntuti spasi sebelum / sesudah gambar, tapi tertinggal / preceeding _s atau -s tidak diperbolehkan (pengecualian adalah 0- atau 1- pengindeksan)
  • Anda dapat memilih untuk mengatur titik 0 tepat sebelum yang pertama _pada garis angka, atau tepat setelahnya.
  • Tidak ada karakter alternatif untuk -, |atau _dapat digunakan.
  • Ini adalah , jadi jawaban tersingkat dalam byte menang.

Kasus cobaan

Berikut ini adalah test case lainnya, dengan n=10

            |-------|
            ||-----||
            ||     ||
  |----|    ||     ||
  |    |    ||     ||
  ||--||    ||     ||
  ||  ||    ||     ||
||||  ||    ||     ||
_____________________
 |||  ||   |||     ||
 |||  ||   |||     ||
  |   ||   |||     ||
  |---||   |||     ||
       |   |||     ||
       |---|||     ||
           ||------||
           |--------|

Tidak jelas di mana tepi kiri kotak harus ditempatkan.
Daniil Tutubalin

@DaniilTutubalin Saya tidak yakin saya mengerti apa yang Anda maksud.
Geza Kerecsenyi

pada dasarnya, pernyataan hanya menentukan bahwa kita perlu menggambar kotak (width = height) dan bahwa mereka harus bergantian antara naik dan turun. Tidak ada instruksi tentang ukuran dan posisi kotak. Dalam kasus uji saya melihat bahwa 2 kotak mungkin memiliki posisi tepi kiri yang sama.
Daniil Tutubalin

Saya pikir As you can see, this line also has a height of 2, since the height must be equal to the distance between the two terms., serta You can choose to set the 0 point just before the first _ on the number line, or just after it.membungkusnya dengan cukup baik.
Geza Kerecsenyi

Saya pikir test case untuk n = 10 salah dari 13-> 20 dan seterusnya.
Nick Kennedy

Jawaban:


Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.