Doğal bir sayıyı temsil etmenin bir yolu asal sayıların üslerini çoğaltmaktır. Örneğin, 6, 2 ^ 1 * 3 ^ 1 ile temsil edilebilir ve 50, 2 ^ 1 * 5 ^ 2 ile temsil edilebilir (burada ^, üstel değeri gösterir). Bu gösterimdeki prim sayısı, bu temsil yöntemini kullanmanın diğer yöntemlere kıyasla daha kısa olup olmadığını belirlemeye yardımcı olabilir. Ama bunları elle hesaplamak istemediğim için, bunu benim için yapacak bir programa ihtiyacım var. Ancak, eve dönene kadar programı hatırlamam gerektiğinden, olabildiğince kısa olması gerekir.
Senin görevin:
Bir sayının bu gösteriminde kaç farklı asal sayı olduğunu belirlemek için bir program veya işlev yazın.
Giriş:
Herhangi bir normal yöntemle 1 <n <10 ^ 12 olacak şekilde n tamsayısı.
Çıktı:
Girişte ana hatlarıyla belirtildiği gibi, girdiyi temsil etmek için gereken farklı primerlerin sayısı.
Test Durumları:
24 -> 2 (2^3*3^1)
126 -> 3 (2^1*3^2*7^1)
1538493 -> 4 (3^1*11^1*23^1*2027^1)
123456 -> 3 (2^6*3^1*643^1)
Bu OEIS A001221 .
puanlama:
Bu kod golf , bayt kazanır en düşük puan!