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!)
A270270 The number of n-digit numbers in A270048. 2
4, 6, 17, 45, 131, 381, 1123, 3334, 9973, 29991, 90601, 274746, 835844, 2549874, 7797469, 23894630, 73358721, 225589420, 694745922, 2142444490, 6614766985, 20445300258, 63256499281, 195890524486, 607136782567, 1883199766658, 5845450449249, 18156369461770, 56429925440218 (list; graph; refs; listen; history; text; internal format)
OFFSET

1,1

COMMENTS

Conjecture: lim_{n -> infinity} a(n)/a(n-1) = sqrt(10).

(Similar to A265108, where we count the n-digit numbers of A264847, pluritriangular numbers.)

It is not possible to count some hundred-digit numbers without a "climbing algorithm" (see also Program and Links).

LINKS

Francesco Di Matteo, Table of n, a(n) for n = 1..300

Francesco Di Matteo, Calculating the A270270 terms

EXAMPLE

a(1) = 4 because in A270048 there are 4 numbers with 1 digit (0, 1, 3, 6).

a(2) = 6 because in A270048 there are 8 numbers with 2 digits (10, 20, 32, 46, 62, 80).

PROG

(Python)

# init values

seq = [4]   # the output list

somme = [4] # the n-value list after the adding of the last seq term

last = [10] # last a(n) term, or the first k-digit number (10 with k=2)

# CLIMBING loop, put a bigger value if you want

for n in range (1, 30):

  k = (len(somme)+1)     # the digits number

  limit = 10**k          # the newest value to achieve

  base = (somme[-1]+1)*k # this is the (n+1)*k value

  hypo = seq[-1]*3       # to obtain rapidly the limite value

  rid = 10**(len(str(hypo))-1) # the reduction factor

  # Adjustment LOOP #

  s, p, m = 0, 0, 0

  while s < 1:

    diff_1 = (base + (base + (k*(hypo-1))))*float(hypo)/2

    tot = last[-1] + diff_1

    if tot < limit:

      p = 1

      if m == 1 and rid > 1:

        m = 0; rid = rid/10

      hypo = hypo + rid

    else:

      diff_2 = (base + (base + (k*(hypo-2))))*float(hypo-1)/2

      tot = last[-1] + diff_2

      if tot > limit:

        m = 1

        if p == 1 and rid > 1:

          p = 0; rid = rid/10

        hypo = hypo - rid

      else:

        s = 1    # escape value

  # lists updating

  seq.append(hypo)

  somme.append(somme[-1]+ hypo)

  last.append(last[-1]+ diff_1)

# if you want to prove the conjecture values, uncomment next line

#print seq[-1], float(seq[-1])/seq[-2]

print seq

CROSSREFS

Cf. A264847, A265108, A270048.

Sequence in context: A034492 A125691 A302878 * A211949 A079803 A061361

Adjacent sequences:  A270267 A270268 A270269 * A270271 A270272 A270273

KEYWORD

nonn,base

AUTHOR

Francesco Di Matteo, Mar 14 2016

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 July 14 09:22 EDT 2020. Contains 335720 sequences. (Running on oeis4.)