Recamán dizisi ( A005132 ) şu şekilde tanımlanan bir matematik dizisidir:
Alternatif, daha basit bir sözlü açıklama aşağıdaki gibidir:
Yapamazsanız (sayı negatifse veya daha önce kullanılmışsa) çıkartın, bu durumda ekleyin.
İlk birkaç terim
Şimdi, dizinin th terimini oluşturmanızı isteyen bu zorluk zaten var n
. Bu biraz farklı.
Meydan okuma
Bir sayı verildiğinde , dizinin n
ilk n
terimlerini çizin . 'Beraberlik' ile ne demek istiyorum? Göstereyim:
- Uzunluğunda bir sayı satırı
max([A(y) for y<=n])
birimi çizin .n
Şimdilik 5 olduğunu varsayacağız , bu yüzden sayı satırı 6 birim uzunluğunda ( , , , ve , ). 0'dan başlayarak çizgiyi alt çizgilerden yapın:
______
- Birinci ve ikinci terimler arasındaki geçişle başlayın: yani 0 ve 1. Yukarı doğru ilerleyerek bir kare (eşit uzunluk ve yükseklik) çizmek için
|
ve-
düğmelerini kullanın . Bu durumda, mesafeyi sadece 1 olduğu için kaçırmamız gerekecek .-
||
______
- Şimdi, bir sonraki adıma geçeceğiz ( ila çizginin altındaki bir = 3 )her seferinde yukarı ve aşağı arasında değişiyoruz):
||
______
| |
|-|
Gördüğünüz gibi, bu çizgi de 2 yüksekliğe sahiptir, çünkü yükseklik iki terim arasındaki mesafeye eşit olmalıdır.
Devam edersek, sonunda:
|--|
| |
|| | |
______
||| |
||| |
| |
|---|
kurallar
- Bir
-
ve|
çarpışma varsa, daha sonra öncelik verilir. - Önceki / sondaki olabilir Görüntüden önce / sonra boşluklar , ancak sondaki / önündeki
_
s veya s'lere-
izin verilmez (istisna 0- veya 1- indeksleme) - 0 noktasını
_
sayı satırında birinciden hemen önce veya hemen sonra ayarlamayı seçebilirsiniz . - İçin alternatif karakter yok
-
,|
ya da_
kullanılabilir. - Bu kod golf , bayt en kısa cevap kazanır.
Test durumu
İşte başka bir test örneği, n=10
|-------|
||-----||
|| ||
|----| || ||
| | || ||
||--|| || ||
|| || || ||
|||| || || ||
_____________________
||| || ||| ||
||| || ||| ||
| || ||| ||
|---|| ||| ||
| ||| ||
|---||| ||
||------||
|--------|
Karenin sol kenarının nereye yerleştirileceği açık değildir.
—
Daniil Tutubalin
@DaniilTutubalin Ne demek istediğini anladığımdan emin değilim.
—
Geza Kerecsenyi
temel olarak, deyim yalnızca kareler çizmemiz gerektiğini (width = height) ve bunların yukarı ve aşağı arasında değişmesi gerektiğini belirtir. Karelerin boyutu ve konumu hakkında talimat yok. Test durumunda, 2 karenin aynı sol kenar konumuna sahip olabileceğini görüyorum.
—
Daniil Tutubalin
Sanırım
—
Geza Kerecsenyi
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.
, You can choose to set the 0 point just before the first _ on the number line, or just after it.
bunu oldukça iyi tamamlayın.
Sanırım n = 10 için test durumu 13-> 20'den itibaren yanlış.
—
Nick Kennedy