|
|
A205509
|
|
Hamming distance between (n-1)! and n!.
|
|
16
|
|
|
0, 2, 1, 4, 2, 4, 4, 6, 4, 9, 8, 15, 12, 16, 14, 12, 16, 23, 26, 23, 21, 29, 31, 34, 31, 33, 33, 44, 32, 38, 42, 46, 52, 51, 45, 55, 55, 59, 55, 59, 51, 82, 65, 83, 74, 75, 80, 80, 80, 74, 87, 104, 86, 91, 98, 90, 81, 103, 104, 98, 112, 104, 111, 116, 111, 132
(list;
graph;
refs;
listen;
history;
text;
internal format)
|
|
|
OFFSET
|
1,2
|
|
COMMENTS
|
Problem: To find a better lower estimate for a(n) than the trivial one, which is a(n) >= A000120(floor(log_2(n)).
Note that this trivial estimate yields unboundedness of the sequence.
|
|
LINKS
|
|
|
EXAMPLE
|
Since 5!=(0001111000)_2 and 6!=(1011010000)_2, then the number of different binary digits is 4. Therefore, a(6)=4.
|
|
MAPLE
|
read("transforms") :
Hamming := proc(a, b)
XORnos(a, b) ;
wt(%) ;
end proc:
Hamming((n-1)!, n!) ;
|
|
MATHEMATICA
|
nn = 100; Table[b2 = IntegerDigits[n!, 2]; b1 = IntegerDigits[(n - 1)!, 2, Length[b2]]; Total[Abs[b1 - b2]], {n, nn}] (* T. D. Noe, Jan 31 2012 *)
|
|
PROG
|
(Sage)
f = bin(factorial(n)).lstrip("0b")
g = bin(factorial(n-1)).lstrip("0b")
h = "".zfill(len(f)-len(g)) + g
return sum(a != b for a, b in zip(f, h))
[A205509(k) for k in (1..66)] # Peter Luschny, Jan 31 2012
(Python 3.10+)
from math import factorial
|
|
CROSSREFS
|
|
|
KEYWORD
|
nonn,base
|
|
AUTHOR
|
|
|
STATUS
|
approved
|
|
|
|