Bir düz zincirli alk * n, tek (alkan), çift (alken) veya üçlü bağlarla (alkin) bağlanmış bir karbon atomları dizisi olarak tanımlanır, (örtük hidrojenler kullanılır.) Karbon atomları sadece 4 bağ oluşturabilir, bu nedenle hiçbir karbon atomu dörtten fazla bağa sahip olmaya zorlanamaz. Bir düz zincirli alk * ne karbon-karbon bağlarının bir listesi olarak temsil edilebilir.
Bunlar geçerli düz zincirli alk * neslerinin bazı örnekleri:
[] CH4 Methane
[1] CH3-CH3 Ethane
[2] CH2=CH2 Ethene
[3] CH≡CH Ethyne
[1,1] CH3-CH2-CH3 Propane
[1,2] CH3-CH=CH2 Propene
[1,3] CH3-C≡CH Propyne
[2,1] CH2=CH-CH3 Propene
[2,2] CH2=C=CH2 Allene (Propadiene)
[3,1] CH≡C-CH3 Propyne
[1,1,1] CH3-CH2-CH2-CH3 Butane
...
Bunlar olmasa da, en az bir karbon atomunun 4 bağdan fazlasına sahip olacağı gibi:
[2,3]
[3,2]
[3,3]
...
Görev pozitif bir tam sayı verilir, bir program / işlev oluşturmaktır n
, çıkış / geri sayısı tam olarak geçerli düz zincirli alk * nes arasında n
uzunluğunda karbon atomu. Bu OEIS A077998 .
Özellikler / Açıklamalar
- Dönerek
1
doğru şekilde işlemelisiniz1
. - Alk * nesleri gibi
[1,2]
ve[2,1]
farklı olarak kabul edilir. - Çıktı, verilen bir uzunluktaki tüm olası alk * neslerinin bir listesinin uzunluğudur.
- Sen do not doğru 0 işlemek zorunda.
Test Durumları:
1 => 1
2 => 3
3 => 6
4 => 14
Bu kod golf, yani en düşük bayt sayısı kazanır!
<=4
, değil mi?