The OEIS mourns the passing of Jim Simons and is grateful to the Simons Foundation for its support of research in many branches of science, including the OEIS.
login
The OEIS is supported by the many generous donors to the OEIS Foundation.

 

Logo
Hints
(Greetings from The On-Line Encyclopedia of Integer Sequences!)
A134808 Cyclops numbers. 42
0, 101, 102, 103, 104, 105, 106, 107, 108, 109, 201, 202, 203, 204, 205, 206, 207, 208, 209, 301, 302, 303, 304, 305, 306, 307, 308, 309, 401, 402, 403, 404, 405, 406, 407, 408, 409, 501, 502, 503, 504, 505, 506, 507, 508, 509, 601, 602, 603, 604, 605, 606 (list; graph; refs; listen; history; text; internal format)
OFFSET
1,2
COMMENTS
Numbers with middle digit 0, that have only one digit 0, and the total number of digits is odd; the digit 0 represents the eye of a cyclops.
LINKS
Brady Haran and Simon Pampena, Glitch Primes and Cyclops Numbers, Numberphile video (2015).
EXAMPLE
109 is a cyclops number because 109 has only one digit 0 and this 0 is the middle digit.
MATHEMATICA
cyclopsQ[n_Integer, b_:10] := Module[{digitList = IntegerDigits[n, b], len, pos0s, flag}, len = Length[digitList]; pos0s = Select[Range[len], digitList[[#]] == 0 &]; flag = OddQ[len] && (Length[pos0s] == 1) && (pos0s == {(len + 1)/2}); Return[flag]]; Select[Range[0, 999], cyclopsQ] (* Alonso del Arte, Dec 16 2010 *)
Reap[Do[id=IntegerDigits[n]; If[Position[id, 0]=={{(Length[id]+1)/2}}, Sow[n]], {n, 0, 10^3}]][[2, 1]] (* Zak Seidov, Dec 17 2010 *)
cycQ[n_]:=Module[{idn=IntegerDigits[n], len=IntegerLength[n]}, OddQ[len] && DigitCount[ n, 10, 0]==1&&idn[[(len+1)/2]]==0]; Join[{0}, Select[Range[ 0, 700], cycQ]] (* Harvey P. Dale, Mar 07 2020 *)
PROG
(Sage)
def is_cyclops(n, base=10):
dg = n.digits(base) if n > 0 else [0]
return len(dg) % 2 == 1 and dg[len(dg)//2] == 0 and dg.count(0) == 1
is_A134808 = lambda n: is_cyclops(n)
# D. S. McNeil, Dec 17 2010
(PARI) a(n, {base=10}) = my (l=0); my (r=n-1); while (r >= (base-1)^(2*l), r -= (base-1)^(2*l); l++); return (base^(l+1) * ( (base^l-1)/(base-1) + if (base>2, fromdigits(digits(r \ ((base-1)^l), (base-1)), base)) ) + ( (base^l-1)/(base-1) + if (base>2, fromdigits(digits(r % ((base-1)^l), (base-1)), base)))) \\ Rémy Sigrist, Apr 29 2017
(Python)
from itertools import product
def cyclops(upto=float('inf'), upton=float('inf')): # generator
yield 0
c, n, half_digits, pow10 = 0, 1, 0, 10
while 100**(half_digits+1) < upto and n < upton:
half_digits += 1
pow10 *= 10
for left in product("123456789", repeat=half_digits):
left_plus_eye = int("".join(left))*pow10
for right in product("123456789", repeat=half_digits):
c, n = left_plus_eye + int("".join(right)), n+1
if c <= upto and n <= upton: yield c
print([c for c in cyclops(upto=606)])
print([c for c in cyclops(upton=52)]) # Michael S. Branicky, Jan 05 2021
CROSSREFS
Sequence in context: A152054 A296883 A183086 * A274612 A261448 A213312
KEYWORD
base,easy,nonn
AUTHOR
Omar E. Pol, Nov 21 2007
STATUS
approved

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

License Agreements, Terms of Use, Privacy Policy. .

Last modified May 18 15:11 EDT 2024. Contains 372653 sequences. (Running on oeis4.)