A342304 k-digit positive numbers exactly one of whose substrings is divisible by k.
1, 2, 3, 4, 5, 6, 7, 8, 9, 21, 23, 25, 27, 29, 41, 43, 45, 47, 49, 61, 63, 65, 67, 69, 81, 83, 85, 87, 89, 101, 104, 107, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 122, 125, 128, 131, 134, 137, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 152, 155, 158, 161
Offset: 1
Examples
107 is a 3-digit one-child number since among its substrings 1, 0, 7, 10, 07, 107 only 0 is divisible by 3. 222 is a 3-digit one-child number since among its substrings 2, 2, 2, 22, 22, 222 only 222 is divisible by 3. 572 is not a 3-digit one-child number, since among its substrings 5, 7, 1, 57, 72, 572 both 57 and 72 are divisible by 3. 616 is not a 3-digit one-child number, since among its substrings 6, 1, 6, 61, 16, 616 the two 6's are both divisible by 3.
Links
- Robert Israel, Table of n, a(n) for n = 1..10000
- Project Euler, Problem 413: One-child Numbers.
Crossrefs
Cf. A063527.
Programs
-
Maple
filter:= proc(n) local L,d,i,j,k, ct, x; L:= convert(n,base,10); d:= nops(L); ct:= 0: for i from 1 to d do for j from i to d do x:= add(L[k]*10^(k-i),k=i..j); if x mod d = 0 then ct:= ct+1; if ct = 2 then return false fi fi; od od; evalb(ct = 1) end proc: select(filter, [$1..200]); # Robert Israel, Mar 11 2021
-
Python
def ok(n): s, c = str(n), 0 ss = (s[i:j] for i in range(len(s)) for j in range(i+1, len(s)+1)) for w in ss: if int(w)%len(s) == 0: c += 1 if c == 2: return False return n > 0 and c == 1 print([k for k in range(162) if ok(k)]) # Michael S. Branicky, Aug 15 2022
Comments