login
Numbers all of whose divisors are alternating numbers (A030141).
3

%I #16 Jul 14 2022 12:08:35

%S 1,2,3,4,5,6,7,8,9,10,12,14,16,18,21,23,25,27,29,32,36,41,43,47,49,50,

%T 54,58,61,63,67,69,81,83,87,89,94,98,101,103,107,109,123,125,127,129,

%U 141,145,147,149,161,163,167,181,183,189,214,218,250,254,290,298

%N Numbers all of whose divisors are alternating numbers (A030141).

%C The smallest alternating number that is not a term is 30, because of 15.

%e 32 is a term since all the divisors of 32, i.e., 1, 2, 4, 8, 16 and 32, are alternating numbers

%t q[n_] := AllTrue[Divisors[n], !MemberQ[Differences[Mod[IntegerDigits[#], 2]], 0] &]; Select[Range[300], q] (* _Amiram Eldar_, Jul 12 2022 *)

%o (Python)

%o from sympy import divisors

%o def p(d): return 0 if d in "02468" else 1

%o def c(n):

%o if n < 10: return True

%o s = str(n)

%o return all(p(s[i]) != p(s[i+1]) for i in range(len(s)-1))

%o def ok(n):

%o return c(n) and all(c(d) for d in divisors(n, generator=True))

%o print([k for k in range(1, 200) if ok(k)]) # _Michael S. Branicky_, Jul 12 2022

%o (PARI) isokd(n, d=digits(n))=for(i=2, #d, if((d[i]-d[i-1])%2==0, return(0))); 1; \\ A030141

%o isok(m) = sumdiv(m, d, isokd(d)) == numdiv(m); \\ _Michel Marcus_, Jul 12 2022

%Y Subsequence of A030141.

%Y Cf. A355593, A355594, A355595.

%Y Similar sequences: A062687, A190217, A329419, A337941.

%K nonn,base

%O 1,2

%A _Bernard Schott_, Jul 12 2022

%E a(51) and beyond from _Michael S. Branicky_, Jul 12 2022