Katalanca numaraları ( OEIS ) çoğu zaman, kombinasyon görünen doğal bir sayı dizisi bulunmaktadır.
N. Katalanca sayı, Dyck kelimelerinin sayısıdır (dengeli parantez dizileri veya [[][]]
a ve b iki karakterini kullanarak biçimsel olarak tanımlanmış bir dize gibi tanımlanmış parantez veya parantezler . b karakterlerinden oluşan dizgenin tümü, 2n uzunluğunda, aynı dizgede a ve b karakterleriyle aynı sayıdadır. Katalanca sayı (n> = 0 için) ayrıca açıkça şöyle tanımlanır:
N = 0'dan başlayarak ilk 20 Katalanca sayı:
1, 1, 2, 5, 14, 42, 132, 429, 1430, 4862, 16796, 58786, 208012, 742900, 2674440, 9694845, 35357670, 129644790, 477638700, 1767263190...
Meydan okuma
STDIN aracılığıyla negatif olmayan bir tamsayı n veya kabul edilebilir bir alternatif alan ve nt Katalanca sayısını veren tam bir program veya işlev yazın. Programınız 0-19 girişleri için asgari olarak çalışmalıdır.
I / O
Giriş
Programınız STDIN'den, işlev argümanlarından veya bu meta gönderi için kabul edilebilir alternatiflerden herhangi birinden girdi almalıdır . Girilen sayıyı standart ondalık gösterimi, tekli gösterimi veya bayt olarak okuyabilirsiniz.
- Diliniz STDIN'den veya kabul edilebilir herhangi bir alternatifden giriş alamazsa (ve yalnızca eğer), programdaki bir kodlanmış değişkenden veya uygun bir eşdeğerden giriş alabilir.
Çıktı
Programınız, bu Katalonya numarasını STDOUT'a, işlev sonucuna veya bu meta gönderi için kabul edilebilir alternatiflerden birine vermelidir . Katalanca sayıyı standart ondalık göstergede, tekli göstergede veya bayt olarak verebilirsiniz.
Çıktı isteğe bağlı olarak bir veya daha fazla yeni satır tarafından takip edilen uygun Katalanca numaradan oluşmalıdır. Dilinizin yorumlayıcısının bastırılamayan (tebrik, ANSI renk kodları veya girinti gibi) sabit çıktısı dışında başka bir çıktı üretilemez.
Bu en kısa dili bulmakla ilgili değil. Bu her dilde en kısa programı bulmakla ilgili. Bu nedenle bir cevap kabul etmeyeceğim.
Bu mücadelede, mücadeleden daha yeni diller , bir uygulamaya sahip oldukları sürece kabul edilebilirdir . Daha önce uygulanmamış bir dil için bu tercümanı kendiniz yazmanıza izin verilir (ve hatta teşvik edilir). Bunun dışında tüm standart kod-golf kurallarına uyulmalıdır. Çoğu dilde yapılan gönderiler uygun bir önceden kodlanmış kodlamada (genellikle UTF-8) bayt olarak puanlanacaktır. Ayrıca, nt Katalanca sayısını hesaplamak için yerleşik yapılara izin verildiğini unutmayın.
Katalog
Bu yazının altındaki Yığın Parçacığı, cevapları a) dil başına en kısa çözümün bir listesi olarak ve b) genel bir lider tablosu olarak oluşturur.
Cevabınızın göründüğünden emin olmak için, lütfen aşağıdaki Markdown şablonunu kullanarak cevabınızı bir başlık ile başlatın:
## Language Name, N bytes
Gönderinizin N
büyüklüğü nerede ? Puanınızı artırmak varsa, olabilir onları içinden vurarak, başlığa eski hesapları tutmak. Örneğin:
## Ruby, <s>104</s> <s>101</s> 96 bytes
Başlığınıza birden fazla sayı eklemek istiyorsanız (örneğin, puanınız iki dosyanın toplamı olduğundan veya tercüman bayrağı cezalarını ayrı ayrı listelemek istediğiniz için), gerçek puanın başlıktaki son sayı olduğundan emin olun :
## Perl, 43 + 2 (-p flag) = 45 bytes
Dil adını, daha sonra pasajda görünecek bir bağlantı da yapabilirsiniz:
## [><>](http://esolangs.org/wiki/Fish), 121 bytes