Dört tamsayı dizisi
Bu meydan okumada, aşağıdaki dizilerle verilen pozitif bir tamsayının dört farklı özelliğini test edeceksiniz. Bir pozitif tam sayı , N olduğu
- Mükemmel ( OEIS A000396 ), uygun bölenler toplamı halinde N eşittir N . Dizi 6, 28, 496, 8128, 33550336, 8589869056, 137438691328, 2305843008139952128 ile başlar ...
- refactorable ( OEIS A033950 ), bir bölenler sayısı ise N bir bölen bir N . Dizi 1, 2, 8, 9, 12, 18, 24, 36, 40, 56, 60, 72, 80, 84, 88, 96, 104, 108, 128 ... ile başlar.
- Pratik ( OEIS A005153 ), her tam sayı ise 1 ≤ K ≤ K bazı belirgin Bölen toplamıdır N . Dizi 1, 2, 4, 6, 8, 12, 16, 18, 20, 24, 28, 30, 32, 36, 40, 42, 48, 54, 56 ... ile başlar.
- yüksek bileşik ( OEIS A002128 ), her sayı ise 1 ≤ K <N kesin daha az bölenler sahip N . Dizi 1, 2, 4, 6, 12, 24, 36, 48, 60, 120, 180, 240, 360, 720, 840, 1260, 1680, 2520, 5040 ile başlar ...
Dört program
Senin görevin dört program yazmak (yani tam programlar, fonksiyon tanımları veya standart yöntemlerden herhangi biriyle I / O gerçekleştiren anonim fonksiyonlar ). Her program, bu dizilerden birinin üyelik sorununu çözecektir. Başka bir deyişle, her program girdi olarak pozitif bir N ≥ 1 tamsayısı alır ve N dizide ise doğruluk değeri ve değilse yanlış bir değer verir. N'nin programlama dilinizin standart tamsayı türünün sınırları içinde olduğunu varsayabilirsiniz .
Programlar aşağıdaki şekilde ilişkilendirilmelidir. Öyle dört dize var ABCD
ki
AC
mükemmel sayıları tanıyan programdır.AD
düzeltilebilir sayıları tanıyan programdır.BC
pratik sayıları tanıyan programdır.BD
yüksek oranda kompozit sayıları tanıyan programdır.
puanlama
Skorunuz dizelerin toplam uzunluğudur (bayt cinsinden), ABCD
diğer bir deyişle dört programın toplam bayt sayısının ikiye bölünmesiyle elde edilir. Her programlama dilinde en düşük puan kazanır. Standart kod golf kuralları geçerlidir.
Dört dizeyse Örneğin a{
, b{n
, +n}
ve =n}?
, daha sonra dört programlardır a{+n}
, a{=n}?
, b{n+n}
ve b{n=n}?
ve skoru 2 + 3 + 3 + 4 = 12'dir.