Bir asal güç, n = p k biçiminde yazılabilecek pozitif bir tamsayıdır n , burada p , bir asaldır ve k , pozitif bir tamsayıdır. Örneğin, bazı asal güçler .[2, 3, 5, 4, 9, 25, 8, 27, 125]
Sonra, 2'nin ana güçlerini düşünün. Bunlar [2, 4, 8, 16, ...]
2 k şeklindedir ve yazılabilir . Bunların hepsi, 20'nin altındaki asal güçler göz önüne alındığında dahil edileceklerdir. Ancak, 16, bu aralıktaki 2 temel üs ile maksimum asal güçtür. Bir ana güç p k , bu aralıktaki en yüksek p gücü ise bir aralıkta maksimumdur . Yalnızca her aralıktaki maksimum asal güç ile ilgileniyoruz, bu nedenle tüm düşük asal güçlerin hariç tutulması gerekiyor.
Amacınız pozitif bir tamsayı alır bir işlev veya program yazmaktır n ve çıkışlar maksimum aralıkta asal güçler [2, 3, 4, ..., n]
.
En yüksek asal güç tanımını ve daha fazlasını tanımlamak için @ Peter Taylor'a teşekkür ederiz .
kurallar
- Bu kod golfüdür, bu yüzden kodunuzu mümkün olduğunca kısa tutun.
- Maksimal asal güçler herhangi bir sırada çıkış olabilir ama hiçbir çiftleri olmalıdır.
Test durumları
n result
1 []
2 [2]
3 [2, 3]
4 [3, 4]
5 [3, 4, 5]
6 [3, 4, 5]
7 [3, 4, 5, 7]
20 [5, 7, 9, 11, 13, 16, 17, 19]
50 [11, 13, 17, 19, 23, 25, 27, 29, 31, 32, 37, 41, 43, 47, 49]
100 [11, 13, 17, 19, 23, 25, 29, 31, 37, 41, 43, 47, 49, 53, 59, 61, 64, 67, 71, 73, 79, 81, 83, 89, 97]
10000 <1229 results>
[101, 103, 107, 109, 113, 127, 131, 137, 139, 149, ..., 9887, 9901, 9907, 9923, 9929, 9931, 9941, 9949, 9967, 9973]
10000'e ait maksimum asal güçlerin tam listesi burada bulunabilir .