login
A349146
Number of ordered n-tuples (x_1, x_2, x_3, ..., x_n) such that Sum_{k=1..n} 1/x_k is an integer and x_k is an integer between 1 and n for 1 <= k <= n.
3
1, 1, 2, 5, 25, 82, 1310, 6757, 73204, 612534, 12021898, 100648935, 3293923530, 30781757528, 543076024093, 22444907405573, 490532466616585, 6321096033756031, 293288707966712654, 4209069624596495601, 231798923882314673793, 15160706809349856453181, 265850457583646602080422, 4542630089978045405518910
OFFSET
0,3
EXAMPLE
1/1 + 1/1 = 2 and 2 is an integer.
1/1 + 1/2 = 3/2.
1/2 + 1/1 = 3/2.
1/2 + 1/2 = 1 and 1 is an integer.
So a(2) = 2.
PROG
(Ruby)
def A(n)
return 1 if n == 0
cnt = 0
(1..n).to_a.repeated_permutation(n){|i|
cnt += 1 if (1..n).inject(0){|s, j| s + 1 / i[j - 1].to_r}.denominator == 1
}
cnt
end
def A349146(n)
(0..n).map{|i| A(i)}
end
p A349146(6)
(Python)
from math import lcm, factorial, prod
from collections import Counter
from itertools import combinations_with_replacement
def multiset_count(x): return factorial(len(x))//prod(factorial(d) for d in Counter(x).values())
def A349146(n):
k = lcm(*range(2, n+1))
dlist = tuple(k//d for d in range(1, n+1))
return sum(multiset_count(d) for d in combinations_with_replacement(range(1, n+1), n) if sum(dlist[e-1] for e in d) % k == 0) # Chai Wah Wu, Nov 09 2021
CROSSREFS
Sequence in context: A335213 A080626 A015957 * A268356 A329158 A337435
KEYWORD
nonn
AUTHOR
Seiichi Manyama, Nov 08 2021
EXTENSIONS
a(10)-a(23) from Alois P. Heinz, Nov 08 2021
STATUS
approved