%I #25 May 04 2020 11:28:27
%S 0,0,1,2,2,3,1,2,3,3,1,2,3,4,3,3,4,5,4,5,4,6,5,6,5,5,4,4,3,4,5,6,7,8,
%T 6,6,7,8,7,7,8,9,9,10,9,7,6,7,7,7,7,8,7,8,8,10,11,13,12,13,11,12,11,
%U 10,11,13,12,13
%N Number of unitary prime divisors of the swinging factorial (A056040) n$ = n! / floor(n/2)!^2.
%C A prime divisor of n is unitary iff its exponent is 1 in the prime power factorization of n. A unitary prime divisor of the swinging factorial n$ can be smaller than n/2. For n >= 30 the swinging factorial has more unitary prime divisors than the factorial and it never has fewer unitary prime divisors. Thus a(n) >= PrimePi(n) - PrimePi(n/2).
%e 16$ = 2*3*3*5*11*13. So 16$ has one non-unitary prime divisor and a(16) = 4.
%p UnitaryPrimeDivisor := proc(f,n) local k, F; F := f(n):
%p add(`if`(igcd(iquo(F,k),k)=1,1,0),k=numtheory[factorset](F)) end;
%p A056040 := n -> n!/iquo(n,2)!^2;
%p A182910 := n -> UnitaryPrimeDivisor(A056040,n);
%p seq(A182910(i), i=1..LEN);
%t Table[Function[m, If[m == 1, 0, Count[FactorInteger[m][[All, -1]], 1]]][n!/Floor[n/2]!^2], {n, 0, 67}] (* _Michael De Vlieger_, Aug 02 2017 *)
%o (Python)
%o from sympy import factorint, factorial
%o def a056169(n): return 0 if n==1 else sum(1 for i in factorint(n).values() if i==1)
%o def a056040(n): return factorial(n)//factorial(n//2)**2
%o def a(n): return a056169(a056040(n))
%o print([a(n) for n in range(68)]) # _Indranil Ghosh_, Aug 02 2017
%Y Cf. A056171.
%K nonn
%O 0,4
%A _Peter Luschny_, Mar 14 2011
|