login
The OEIS Foundation is supported by donations from users of the OEIS and by a grant from the Simons Foundation.

 

Logo


Hints
(Greetings from The On-Line Encyclopedia of Integer Sequences!)
A246198 Half-Zumkeller numbers: numbers n whose proper positive divisors can be partitioned into two disjoint sets whose sums are equal. 4
6, 12, 20, 24, 28, 30, 40, 42, 48, 54, 56, 60, 66, 70, 78, 80, 84, 88, 90, 96, 102, 104, 108, 112, 114, 120, 126, 132, 138, 140, 150, 156, 160, 168, 174, 176, 180, 186, 192, 198, 204, 208, 210, 216, 220, 222, 224, 225, 228, 234, 240, 246, 252, 258, 260, 264 (list; graph; refs; listen; history; text; internal format)
OFFSET

1,1

COMMENTS

All even half-Zumkeller numbers are in A083207, i.e. they are Zumkeller numbers (see Clark et al. 2008). The first 47 terms coincide with A083207.  225 is the first number in the sequence that is not a Zumkeller number.

REFERENCES

S. Clark et al., Zumkeller numbers, Mathematical Abundance Conference, April 2008.

LINKS

Robert Israel, Table of n, a(n) for n = 1..9188 (n=1..1309 from Chai Wah Wu)

K. P. S. Bhaskara Rao and Yuejian Peng, On Zumkeller Numbers, Journal of Number Theory, Volume 133, Issue 4, April 2013, pp. 1135-1155.

EXAMPLE

Proper divisors of 225 are 1, 3, 5, 9, 15, 25, 45, 75 and 1+3+15+25+45=5+9+75.

MAPLE

filter:= proc(n) local L, s, t, nL, B, j, k;

   L:= numtheory:-divisors(n) minus {n};

   s:= convert(L, `+`);

   if s::odd then return false fi;

   t:= s/2;

   nL:= nops(L);

   B:= Array(0..t, 1..nL);

   B[0, 1]:= 1;

   B[L[1], 1]:= 1;

   for j from 2 to nL do

      B[.., j]:= B[.., j-1];

      for k from L[j] to t do

         B[k, j]:= B[k, j] + B[k-L[j], j-1]

      od:

      if B[t, j] > 0 then return true fi;

   od:

   false

end:

select(filter, [$2..300]); # Robert Israel, Aug 19 2014

MATHEMATICA

filterQ[n_] := Module[{L, s, t, nL, B, j, k},

  L = Most[Divisors[n]];

  s = Total[L];

  If[OddQ[s], Return[False]];

  t = s/2;

  nL = Length[L];

  B[_, _] = 0;

  B[0, 1] = 1;

  B[L[[1]], 1] = 1;

  For[j = 2, j <= nL, j++,

    Do[B[k, j] = B[k, j-1], {k, 0, t}];

    For[k = L[[j]], k <= t, k++,

      B[k, j] = B[k, j] + B[k-L[[j]], j-1]

    ];

    If[ B[t, j] > 0, Return[True]];

  ];

  False

];

Select[Range[2, 300], filterQ] (* Jean-François Alcover, Mar 04 2019, after Robert Israel *)

PROG

(Python)

from sympy.combinatorics.subsets import Subset

from sympy import divisors

A246198 = []

for n in range(2, 10**3):

....d = divisors(n)

....d.remove(n)

....s, dmax = sum(d), max(d)

....if not s % 2 and 2*dmax <= s:

........d.remove(dmax)

........s2 = s/2-dmax

........for x in range(2**len(d)):

............if sum(Subset.unrank_binary(x, d).subset) == s2:

................A246198.append(n)

................break

(Python)

from sympy import divisors

import numpy as np

A246198 = []

for n in range(2, 10**3):

....d = divisors(n)

....d.remove(n)

....s, dmax = sum(d), max(d)

....if not s % 2 and 2*dmax <= s:

........d.remove(dmax)

........s2, ld = int(s/2-dmax), len(d)

........z = np.zeros((ld+1, s2+1), dtype=int)

........for i in range(1, ld+1):

............y = min(d[i-1], s2+1)

............z[i, range(y)] = z[i-1, range(y)]

............z[i, range(y, s2+1)] = np.maximum(z[i-1, range(y, s2+1)], z[i-1, range(0, s2+1-y)]+y)

............if z[i, s2] == s2:

................A246198.append(n)

................break

# Chai Wah Wu, Aug 19 2014

CROSSREFS

Cf. A083207.

Sequence in context: A332543 A235268 A105455 * A083207 A304391 A145278

Adjacent sequences:  A246195 A246196 A246197 * A246199 A246200 A246201

KEYWORD

nonn

AUTHOR

Chai Wah Wu, Aug 18 2014

STATUS

approved

Lookup | Welcome | Wiki | Register | Music | Plot 2 | Demos | Index | Browse | More | WebCam
Contribute new seq. or comment | Format | Style Sheet | Transforms | Superseeker | Recent
The OEIS Community | Maintained by The OEIS Foundation Inc.

License Agreements, Terms of Use, Privacy Policy. .

Last modified March 31 19:37 EDT 2020. Contains 333151 sequences. (Running on oeis4.)