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



(Greetings from The On-Line Encyclopedia of Integer Sequences!)
A159860 The maximum length of a string of identical characters which can be reduced to one character in "n" nested substitution operations, e.g. replace(string, substring, character) such that all shorter strings will also reduce to one character. 0
2, 4, 10, 40, 460, 53590, 718052410, 128899816953780640, 4313494300416744426870901874924164733839903365825579313972159982440, 4651558269931934854975620016004337876013135072223108603058097397593938231557041644242694327255059535060293888049465758695393517062060 (list; graph; refs; listen; history; text; internal format)



The ideal substring length is related to A007501. It can be shown these are equivalent problems.

For n = 1, the ideal substring length is 2.

For n > 1:

n = 2, term 0 of A007501, substring length = 2

n = 3, term 1 of A007501, substring length = 3

n = 4, term 2 of A007501, substring length = 6


This has applications in text processing operations in computer languages where recursions or loops may not be possible (e.g. standard SQL). To remove extra spaces, one might be tempted to nest several replace operations but use the same substring length, or perhaps double or halve at each step, both of which will not clear as effectively as using substring lengths as indicated in A007501.


Table of n, a(n) for n=1..10.


Given substring length p as indicated in A007501, sequence is p(p+1)-2.

a(n) = a(n - 1)(a(n - 1) + 6)/4 [From N. Sato, Feb 01 2010]


To illustrate, suppose we have a string of repeating Xs.

n = 1: replace(string, "XX", "X"), the longest string which will reduce to "X" is "XX"

n = 2: replace(replace(string, "XX", "X"), "XX", "X") will reduce up to 4 Xs to "X"

n = 3: replace(replace(replace(string, "XXX", "X"), "XX", "X"), "XX", "X") up to 10 Xs

n = 4: replace(replace(replace(replace(string, "XXXXXX", "X"), "XXX", "X"), "XX", "X"), "XX", "X") up to 40 Xs



(Other) // q is this sequence, p is A007501

set q = 2

output q


set p = q / 2 + 1

set q = p * (p + 1) - 2

output q

end repeat


2, followed by A007501

Sequence in context: A084737 A322698 A153757 * A013549 A184253 A174136

Adjacent sequences:  A159857 A159858 A159859 * A159861 A159862 A159863




Russell Harper (russell.harper(AT)springboardnetworks.com), Apr 24 2009



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 29 17:23 EDT 2020. Contains 333116 sequences. (Running on oeis4.)