A344769 a(n) = A005187(n) - A011772(n).
0, 0, 2, 0, 4, 7, 5, 0, 8, 14, 9, 14, 11, 18, 21, 0, 16, 26, 17, 23, 33, 30, 20, 31, 23, 37, 24, 46, 26, 41, 27, 0, 53, 50, 53, 62, 35, 54, 62, 63, 39, 61, 40, 53, 77, 65, 43, 62, 47, 73, 81, 62, 50, 77, 95, 61, 92, 84, 55, 101, 57, 88, 93, 0, 103, 119, 65, 118, 112, 117, 68, 79, 71, 109, 122, 93, 129, 140, 75, 94, 79, 121
Offset: 1
Keywords
Links
- Antti Karttunen, Table of n, a(n) for n = 1..16384
- Antti Karttunen, Data supplement: n, a(n) computed for n = 1..65537
Programs
-
PARI
A005187(n) = { my(s=n); while(n>>=1, s+=n); s; }; A011772(n) = { if(n==1, return(1)); my(f=factor(if(n%2, n, 2*n)), step=vecmax(vector(#f~, i, f[i, 1]^f[i, 2]))); forstep(m=step, 2*n, step, if(m*(m-1)/2%n==0, return(m-1)); if(m*(m+1)/2%n==0, return(m))); }; \\ From A011772 A344769(n) = (A005187(n) - A011772(n));
-
Python
from itertools import combinations from math import prod from sympy import factorint, divisors from sympy.ntheory.modular import crt def A344769(n): c = 2*n-bin(n).count('1') plist = [p**q for p, q in factorint(2*n).items()] if len(plist) == 1: return int(c+1+(plist[0] % 2 - 2)*n) return int(c-min(min(crt([m,2*n//m],[0,-1])[0],crt([2*n//m,m],[0,-1])[0]) for m in (prod(d) for l in range(1,len(plist)//2+1) for d in combinations(plist,l)))) # Chai Wah Wu, Jun 03 2021