A348719 Numbers k delivering the records in the number of partitions of divisors of k into two sets of size > 1 with an integer arithmetic mean in each set.
1, 6, 12, 18, 20, 24, 30, 42, 48, 60, 120, 180, 240, 360, 420, 480, 504, 540, 630, 720, 840, 1080, 1260, 1440, 1680, 2160, 2520, 5040, 7560, 10080, 15120, 20160
Offset: 1
Examples
6 is the smallest number whose set of divisors can be partitioned into two disjoint sets whose arithmetic means are both integers: {1, 3} and {2, 6}. 12 is the smallest number whose set of divisors can be partitioned into two disjoint sets whose arithmetic means are both integers in three ways: ({1, 3}, {2, 4, 6, 12}), ({2, 6}, {1, 3, 4, 12}) and ({4, 12}, {1, 2, 3, 6}).
Programs
-
Mathematica
q[d_] := Length[d] > 1 && IntegerQ @ Mean[d]; c[n_] := Count[Subsets[(d = Divisors[n])], _?(q[#] && q[Complement[d, #]] &)]/2; cm = -1; s = {}; Do[If[(c1 = c[n]) > cm, cm = c1; AppendTo[s, n]], {n, 1, 240}]; s
-
Python
from itertools import count, islice, combinations from sympy import divisors def A348719_gen(): # generator of terms c = 0 yield 1 for n in count(2): divs = tuple(divisors(n, generator=True)) l, b = len(divs), sum(divs) if l>=4 and 2**(l-1)-l>c: m = sum(1 for k in range(2,(l-1>>1)+1) for p in combinations(divs,k) if not ((s:=sum(p))%k or (b-s)%(l-k))) if l&1 == 0: k = l>>1 m += sum(1 for p in combinations(divs,k) if 1 in p and not ((s:=sum(p))%k or (b-s)%k)) if m > c: yield n c = m A348719_list = list(islice(A348719_gen(),10)) # Chai Wah Wu, Sep 24 2023
Extensions
a(22)-a(23) from Chai Wah Wu, Sep 24 2023
a(24) from Chai Wah Wu, Sep 26 2023
a(25)-a(32) added and definition corrected by Max Alekseyev, Feb 01 2024
Comments