|
|
A356647
|
|
Concatenation of runs {y..x} for each x>=1, using each y from 1 to x before moving on to the next value for x.
|
|
1
|
|
|
1, 1, 2, 2, 1, 2, 3, 2, 3, 3, 1, 2, 3, 4, 2, 3, 4, 3, 4, 4, 1, 2, 3, 4, 5, 2, 3, 4, 5, 3, 4, 5, 4, 5, 5, 1, 2, 3, 4, 5, 6, 2, 3, 4, 5, 6, 3, 4, 5, 6, 4, 5, 6, 5, 6, 6, 1, 2, 3, 4, 5, 6, 7, 2, 3, 4, 5, 6, 7, 3, 4, 5, 6, 7, 4, 5, 6, 7, 5, 6, 7, 6, 7, 7, 1, 2, 3
(list;
graph;
refs;
listen;
history;
text;
internal format)
|
|
|
OFFSET
|
1,3
|
|
COMMENTS
|
Alternate definition: Flattened list of all suffixes (ordered longest to shortest) of the list of all prefixes (ordered shortest to longest) of the list of positive integers. A prefix here is defined as any contiguous sublist of a list which includes the first element, and a suffix as any contiguous sublist of a list which includes the last element.
|
|
LINKS
|
|
|
FORMULA
|
|
|
EXAMPLE
|
1
1 2
_ 2
1 2 3
_ 2 3
_ _ 3
1 2 3 4
_ 2 3 4
_ _ 3 4
_ _ _ 4...
|
|
MATHEMATICA
|
Print @ Flatten @ (Reverse@FoldList[Join[#2, #]&, {#}&/@Reverse@#]& /@ FoldList[Join, Table[{n}, {n, 1, 10}]])
|
|
PROG
|
(JavaScript) a=n=>{for(let i=1; ++i; ){for(let j=0; ++j<i; ){for(let k=j; k<i; k++){if(!--n){return k}}}}}
(MATLAB)
a = cell2mat(arrayfun(@(x)(cell2mat(arrayfun(@(y)([y:x]), [1:x], 'UniformOutput', false))) ...
, [1:max_x], 'UniformOutput', false));
(Python)
from itertools import count, islice
def agen(): # generator of terms
for k in count(1):
for j in range(1, k+1):
yield from range(j, k+1)
|
|
CROSSREFS
|
|
|
KEYWORD
|
nonn,easy
|
|
AUTHOR
|
|
|
STATUS
|
approved
|
|
|
|