login
Number of nonempty subsets of {1..n} whose elements have an odd geometric mean.
5

%I #33 Mar 07 2025 07:49:41

%S 0,1,1,2,2,3,3,4,4,7,7,8,8,9,9,10,10,11,11,12,12,13,13,14,14,19,19,24,

%T 24,25,25,26,26,27,27,28,28,29,29,30,30,31,31,32,32,39,39,40,40,49,49,

%U 50,50,51,51,52,52,53,53,54,54,55,55,62,62,63,63,64,64,65,65,66,66,67,67,90,90,91,91,92,92

%N Number of nonempty subsets of {1..n} whose elements have an odd geometric mean.

%C The geometric mean of a subset such as in name must be an odd number in {1..n} which might ease the search for terms. - _David A. Corneth_, Sep 29 2022

%H Max Alekseyev, <a href="/A357413/b357413.txt">Table of n, a(n) for n = 0..256</a>

%F a(2*n-1) = a(2*n) for n >= 1. - _David A. Corneth_, Sep 29 2022

%F a(n) = A326027(n) - A357414(n). - _Max Alekseyev_, Mar 01 2025

%e a(9) = 7 subsets: {1}, {3}, {5}, {7}, {9}, {1, 9} and {1, 3, 9}.

%o (Python)

%o from functools import lru_cache

%o from sympy import integer_nthroot

%o def cond(p, c): r, b = integer_nthroot(p, c); return b and r&1

%o @lru_cache(maxsize=None)

%o def b(n, p, c):

%o if n == 0: return int (c > 0 and cond(p, c))

%o return b(n-1, p, c) + b(n-1, p*n, c+1) if n&1 else b(n-1, p, c)

%o @lru_cache(maxsize=None)

%o def a(n): return b(n, 1, 0) if n&1 else b(n-1, 1, 0) if n else 0

%o print([a(n) for n in range(41)]) # _Michael S. Branicky_, Sep 29 2022

%Y Cf. A001055, A326027, A357355, A357411, A357414, A357415.

%K nonn

%O 0,4

%A _Ilya Gutkovskiy_, Sep 27 2022

%E a(24)-a(34) from _Michael S. Branicky_, Sep 29 2022

%E a(35)-a(70) from _David A. Corneth_, Sep 29 2022

%E a(0) prepended and terms a(71) onward added by _Max Alekseyev_, Mar 06 2025