Üstün Kompozit Sayılar


12

Üstün yüksek derecede kompozit bir sayı, bölen sayısının sayının bir gücüne oranının mümkün olduğu kadar yüksek olduğu bir tamsayıdır. Bunu bir formül olarak ifade etmek:

D (n), sayının kendisi de dahil olmak üzere n'nin bölenlerinin sayısı olsun. Belirli bir n tamsayısı için, her bir k tamsayısı için d (n) / n ^ e d (k) / k ^ e değerine eşit veya ondan büyük olacak şekilde bir e sayısı varsa, n yüksek oranda bileşik bir sayıdır.

Daha fazla bilgi için Wikipedia'da Üstün kompozit sayı veya OEIS'te A002201 konusuna bakın .

İlk değerler şunlardır:

2, 6, 12, 60, 120, 360, 2520, 5040, 55440, 720720, 1441440, 4324320, 21621600, 367567200, 6983776800, 13967553600, 321253732800, 2248776129600, 65214507758400, 195643523275200, 6064949221531200

Sizin meydan okuma n bir dizin almak ve bu sırayla nth sayısını çıktı.

0 veya 1 dizinleme kullanabilirsiniz ve en az ilk 10 değeri işleyebildiği sürece, yalnızca dilinizin veri türlerinin sınırlarına kadar doğru olan bir program yapabilirsiniz.

Bu kod golf. Standart boşluklar geçerlidir.

Yanıtlar:


3

Mathematica, 277 bayt

(A=AppendTo;p[f_]:=Module[{p=f[[1]],k=f[[2]]},N[Log[(k+2)/(k+1)]/Log[p]]];m=#;f={{2,1},{3,0}};o=1;l={2};x=Table[p[f[[i]]],{i,o+1}];For[n=2,n<=m,n++,i=Position[x,Max[x]][[1,1]];A[l,f[[i,1]]];f[[i,2]]++;If[i>o,o++;A[f,{Prime[i+1],0}];A[x,p[f[[-1]]]]];x[[i]]=p[f[[i]]]];Times@@l)&

giriş

[21]

çıktı

6064949221531200

giriş

[50]

çıktı

247899128073275948560051200231228551175691632580942972608000

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.