Make me a metasequenceMake a pattern alternateGenerate Loopy puzzlesMake a one sequenceA register calculator...

Inverse of the covariance matrix of a multivariate normal distribution

VAT refund for a conference ticket in Sweden

A bug in Excel? Conditional formatting for marking duplicates also highlights unique value

What is better: yes / no radio, or simple checkbox?

Can I become debt free or should I file for bankruptcy? How do I manage my debt and finances?

Is the Bnei Brak of the Hagada and Megila the same as modern-day Bnei Brak?

Canadian citizen, on US no-fly list. What can I do in order to be allowed on flights which go through US airspace?

How to deal with being jealous of your own players?

Get length of the longest sequence of numbers with the same sign

What is a term for a function that when called repeatedly, has the same effect as calling once?

Why is working on the same position for more than 15 years not a red flag?

Logistics of a hovering watercraft in a fantasy setting

Did 5.25" floppies undergo a change in magnetic coating?

Skis versus snow shoes - when to choose which for travelling the backcountry?

Is the set of paths between any two points moving only in units on the plane countable or uncountable?

Reason why dimensional travelling would be restricted

Borrowing Characters

Heating basement floor with water heater

What could trigger powerful quakes on icy world?

Can a space-faring robot still function over a billion years?

A "strange" unit radio astronomy

Do Hexblade warlocks choose their spells from the Hexblade spell list or the warlock spell list?

What are all the squawk codes?

What type of postprocessing gives the effect of people standing out



Make me a metasequence


Make a pattern alternateGenerate Loopy puzzlesMake a one sequenceA register calculator challengeGenerate E-series of preferred numbersIncrementing Gray CodesDraw the Ingress glyphsExponentiation SequenceMake an n-JugglerIndent your code according to Fibonacci













19












$begingroup$


Background



For this challenge, a 'metasequence' will be defined as a sequence of numbers where not only the numbers themselves will increase, but also the increment, and the increment will increase by an increasing value, etc.



For instance, the tier 3 metasequence would start as:



1 2 4 8 15 26 42 64 93 130 176



because:



    1 2 3  4  5  6  7  8   9       >-|
↓+↑ = 7 | Increases by the amount above each time
1 2 4 7 11 16 22 29 37 46 >-| <-|
| Increases by the amount above each time
1 2 4 8 15 26 42 64 93 130 176 <-|


Challenge



Given a positive integer, output the first twenty items of the metasequence of that tier.



Test cases



Input: 3 Output: [ 1, 2, 4, 8, 15, 26, 42, 64, 93, 130, 176, 232, 299, 378, 470, 576, 697, 834, 988, 1160 ]



Input: 1 Output: [ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20 ]



Input: 5 Output: [ 1, 2, 4, 8, 16, 32, 63, 120, 219, 382, 638, 1024, 1586, 2380, 3473, 4944, 6885, 9402, 12616, 16664 ]



Input: 13 Output: [ 1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 2048, 4096, 8192, 16383, 32752, 65399, 130238, 258096, 507624 ]



As you may realise, the first $t+1$ items of each sequence of tier $t$ are the first $t+1$ powers of 2...



Rules




  • Standard loopholes apply

  • This is code-golf, so shortest answer in bytes wins










share|improve this question











$endgroup$








  • 2




    $begingroup$
    I assume you mean 20 terms, not digits?
    $endgroup$
    – Quintec
    yesterday






  • 4




    $begingroup$
    By the way, the tier three metasequence is OEIS A000125
    $endgroup$
    – Embodiment of Ignorance
    yesterday






  • 6




    $begingroup$
    You may want to clarify if solutions have to work for input 20 or greater.
    $endgroup$
    – FryAmTheEggman
    yesterday






  • 4




    $begingroup$
    Can we choose to 0-index (so, output tier 1 for input 0, tier 2 for input 1, etc.)?
    $endgroup$
    – Lynn
    yesterday






  • 1




    $begingroup$
    @MilkyWay90, it's not very clear what you mean: 219 (from level 5) only occurs in Pascal's triangle as $binom{219}{1}$ and $binom{219}{218}$.
    $endgroup$
    – Peter Taylor
    8 hours ago
















19












$begingroup$


Background



For this challenge, a 'metasequence' will be defined as a sequence of numbers where not only the numbers themselves will increase, but also the increment, and the increment will increase by an increasing value, etc.



For instance, the tier 3 metasequence would start as:



1 2 4 8 15 26 42 64 93 130 176



because:



    1 2 3  4  5  6  7  8   9       >-|
↓+↑ = 7 | Increases by the amount above each time
1 2 4 7 11 16 22 29 37 46 >-| <-|
| Increases by the amount above each time
1 2 4 8 15 26 42 64 93 130 176 <-|


Challenge



Given a positive integer, output the first twenty items of the metasequence of that tier.



Test cases



Input: 3 Output: [ 1, 2, 4, 8, 15, 26, 42, 64, 93, 130, 176, 232, 299, 378, 470, 576, 697, 834, 988, 1160 ]



Input: 1 Output: [ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20 ]



Input: 5 Output: [ 1, 2, 4, 8, 16, 32, 63, 120, 219, 382, 638, 1024, 1586, 2380, 3473, 4944, 6885, 9402, 12616, 16664 ]



Input: 13 Output: [ 1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 2048, 4096, 8192, 16383, 32752, 65399, 130238, 258096, 507624 ]



As you may realise, the first $t+1$ items of each sequence of tier $t$ are the first $t+1$ powers of 2...



Rules




  • Standard loopholes apply

  • This is code-golf, so shortest answer in bytes wins










share|improve this question











$endgroup$








  • 2




    $begingroup$
    I assume you mean 20 terms, not digits?
    $endgroup$
    – Quintec
    yesterday






  • 4




    $begingroup$
    By the way, the tier three metasequence is OEIS A000125
    $endgroup$
    – Embodiment of Ignorance
    yesterday






  • 6




    $begingroup$
    You may want to clarify if solutions have to work for input 20 or greater.
    $endgroup$
    – FryAmTheEggman
    yesterday






  • 4




    $begingroup$
    Can we choose to 0-index (so, output tier 1 for input 0, tier 2 for input 1, etc.)?
    $endgroup$
    – Lynn
    yesterday






  • 1




    $begingroup$
    @MilkyWay90, it's not very clear what you mean: 219 (from level 5) only occurs in Pascal's triangle as $binom{219}{1}$ and $binom{219}{218}$.
    $endgroup$
    – Peter Taylor
    8 hours ago














19












19








19





$begingroup$


Background



For this challenge, a 'metasequence' will be defined as a sequence of numbers where not only the numbers themselves will increase, but also the increment, and the increment will increase by an increasing value, etc.



For instance, the tier 3 metasequence would start as:



1 2 4 8 15 26 42 64 93 130 176



because:



    1 2 3  4  5  6  7  8   9       >-|
↓+↑ = 7 | Increases by the amount above each time
1 2 4 7 11 16 22 29 37 46 >-| <-|
| Increases by the amount above each time
1 2 4 8 15 26 42 64 93 130 176 <-|


Challenge



Given a positive integer, output the first twenty items of the metasequence of that tier.



Test cases



Input: 3 Output: [ 1, 2, 4, 8, 15, 26, 42, 64, 93, 130, 176, 232, 299, 378, 470, 576, 697, 834, 988, 1160 ]



Input: 1 Output: [ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20 ]



Input: 5 Output: [ 1, 2, 4, 8, 16, 32, 63, 120, 219, 382, 638, 1024, 1586, 2380, 3473, 4944, 6885, 9402, 12616, 16664 ]



Input: 13 Output: [ 1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 2048, 4096, 8192, 16383, 32752, 65399, 130238, 258096, 507624 ]



As you may realise, the first $t+1$ items of each sequence of tier $t$ are the first $t+1$ powers of 2...



Rules




  • Standard loopholes apply

  • This is code-golf, so shortest answer in bytes wins










share|improve this question











$endgroup$




Background



For this challenge, a 'metasequence' will be defined as a sequence of numbers where not only the numbers themselves will increase, but also the increment, and the increment will increase by an increasing value, etc.



For instance, the tier 3 metasequence would start as:



1 2 4 8 15 26 42 64 93 130 176



because:



    1 2 3  4  5  6  7  8   9       >-|
↓+↑ = 7 | Increases by the amount above each time
1 2 4 7 11 16 22 29 37 46 >-| <-|
| Increases by the amount above each time
1 2 4 8 15 26 42 64 93 130 176 <-|


Challenge



Given a positive integer, output the first twenty items of the metasequence of that tier.



Test cases



Input: 3 Output: [ 1, 2, 4, 8, 15, 26, 42, 64, 93, 130, 176, 232, 299, 378, 470, 576, 697, 834, 988, 1160 ]



Input: 1 Output: [ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20 ]



Input: 5 Output: [ 1, 2, 4, 8, 16, 32, 63, 120, 219, 382, 638, 1024, 1586, 2380, 3473, 4944, 6885, 9402, 12616, 16664 ]



Input: 13 Output: [ 1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 2048, 4096, 8192, 16383, 32752, 65399, 130238, 258096, 507624 ]



As you may realise, the first $t+1$ items of each sequence of tier $t$ are the first $t+1$ powers of 2...



Rules




  • Standard loopholes apply

  • This is code-golf, so shortest answer in bytes wins







code-golf math sequence subsequence






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited yesterday







Geza Kerecsenyi

















asked yesterday









Geza KerecsenyiGeza Kerecsenyi

30911




30911








  • 2




    $begingroup$
    I assume you mean 20 terms, not digits?
    $endgroup$
    – Quintec
    yesterday






  • 4




    $begingroup$
    By the way, the tier three metasequence is OEIS A000125
    $endgroup$
    – Embodiment of Ignorance
    yesterday






  • 6




    $begingroup$
    You may want to clarify if solutions have to work for input 20 or greater.
    $endgroup$
    – FryAmTheEggman
    yesterday






  • 4




    $begingroup$
    Can we choose to 0-index (so, output tier 1 for input 0, tier 2 for input 1, etc.)?
    $endgroup$
    – Lynn
    yesterday






  • 1




    $begingroup$
    @MilkyWay90, it's not very clear what you mean: 219 (from level 5) only occurs in Pascal's triangle as $binom{219}{1}$ and $binom{219}{218}$.
    $endgroup$
    – Peter Taylor
    8 hours ago














  • 2




    $begingroup$
    I assume you mean 20 terms, not digits?
    $endgroup$
    – Quintec
    yesterday






  • 4




    $begingroup$
    By the way, the tier three metasequence is OEIS A000125
    $endgroup$
    – Embodiment of Ignorance
    yesterday






  • 6




    $begingroup$
    You may want to clarify if solutions have to work for input 20 or greater.
    $endgroup$
    – FryAmTheEggman
    yesterday






  • 4




    $begingroup$
    Can we choose to 0-index (so, output tier 1 for input 0, tier 2 for input 1, etc.)?
    $endgroup$
    – Lynn
    yesterday






  • 1




    $begingroup$
    @MilkyWay90, it's not very clear what you mean: 219 (from level 5) only occurs in Pascal's triangle as $binom{219}{1}$ and $binom{219}{218}$.
    $endgroup$
    – Peter Taylor
    8 hours ago








2




2




$begingroup$
I assume you mean 20 terms, not digits?
$endgroup$
– Quintec
yesterday




$begingroup$
I assume you mean 20 terms, not digits?
$endgroup$
– Quintec
yesterday




4




4




$begingroup$
By the way, the tier three metasequence is OEIS A000125
$endgroup$
– Embodiment of Ignorance
yesterday




$begingroup$
By the way, the tier three metasequence is OEIS A000125
$endgroup$
– Embodiment of Ignorance
yesterday




6




6




$begingroup$
You may want to clarify if solutions have to work for input 20 or greater.
$endgroup$
– FryAmTheEggman
yesterday




$begingroup$
You may want to clarify if solutions have to work for input 20 or greater.
$endgroup$
– FryAmTheEggman
yesterday




4




4




$begingroup$
Can we choose to 0-index (so, output tier 1 for input 0, tier 2 for input 1, etc.)?
$endgroup$
– Lynn
yesterday




$begingroup$
Can we choose to 0-index (so, output tier 1 for input 0, tier 2 for input 1, etc.)?
$endgroup$
– Lynn
yesterday




1




1




$begingroup$
@MilkyWay90, it's not very clear what you mean: 219 (from level 5) only occurs in Pascal's triangle as $binom{219}{1}$ and $binom{219}{218}$.
$endgroup$
– Peter Taylor
8 hours ago




$begingroup$
@MilkyWay90, it's not very clear what you mean: 219 (from level 5) only occurs in Pascal's triangle as $binom{219}{1}$ and $binom{219}{218}$.
$endgroup$
– Peter Taylor
8 hours ago










23 Answers
23






active

oldest

votes


















14












$begingroup$


Wolfram Language (Mathematica), 34 bytes



0~Range~19~Binomial~i~Sum~{i,0,#}&


Try it online!



The tier $n$ metasequence is the sum of the first $n+1$ elements of each row of the Pascal triangle.






share|improve this answer











$endgroup$













  • $begingroup$
    Nice insight! :)
    $endgroup$
    – Lynn
    23 hours ago










  • $begingroup$
    There's almost a built-in for that, but unfortunately it's longer.
    $endgroup$
    – Peter Taylor
    6 hours ago










  • $begingroup$
    I don't know enough WL to do anything useful in it, but it seems to me that it might benefit from the identity $$T(n,k) = begin{cases}1 & textrm{if }k=0 \ 2T(n,k-1) - binom{k-1}{n} & textrm{otherwise}end{cases}$$
    $endgroup$
    – Peter Taylor
    3 hours ago





















13












$begingroup$


Haskell, 35 bytes





take 20.(iterate(scanl(+)1)[1..]!!)


Try it online! Uses 0-indexed inputs (f 4 returns tier 5.)




Haskell, 36 bytes





f 1=[1..20]
f n=init$scanl(+)1$f$n-1


Try it online! Uses 1-indexed inputs (f 5 returns tier 5.)



Explanation



scanl (+) 1 is a function that takes partial sums of a list, starting from (and prepending) 1.




For example: scanl (+) 1 [20,300,4000] equals [1,21,321,4321].




It turns out that tier $n$ is just this function applied $ (n-1) $ times to the list $[1,2,3,dots]$.



(Or equivalently: $n$ times to a list of all ones.)



We use either init or [1..20-n] to account for the list getting longer by $1$ every application.






share|improve this answer











$endgroup$









  • 1




    $begingroup$
    [1..20-n] isn't going to work for $n > 20$
    $endgroup$
    – Peter Taylor
    7 hours ago










  • $begingroup$
    take 20.(iterate(scanl(+)1)[1..]!!) would only cost a byte more to fix that
    $endgroup$
    – H.PWiz
    2 hours ago



















6












$begingroup$


Jelly, 8 7 bytes



20ḶcþŻS


Try it online!



   cþ       Table of binom(x,y) where:
20Ḷ x = [0..19]
Ż y = [0..n] e.g. n=3 → [[1, 1, 1, 1, 1, 1, …]
[0, 1, 2, 3, 4, 5, …]
[0, 0, 1, 3, 6, 10, …]
[0, 0, 0, 1, 4, 10, …]]

S Columnwise sum. → [1, 2, 4, 8, 15, 26, …]


This uses @alephalpha’s insight that $$text{meta-sequence}_n(i) = sum_{k=0}^n binom ik.$$






share|improve this answer











$endgroup$





















    4












    $begingroup$


    Python 2, 69 58 55 bytes



    Saved bytes thanks to ovs and Jo King; also, it works in Python 3 now as well.





    m=lambda t:[1+sum(m(t-1)[:n])for n in range(~t and 20)]


    Try it online!



    The math



    Let $a(t,n)$ be the $n^{th}$ term (0-indexed) of the sequence at tier $t$. A little analysis leads to the following recurrence formula:



    $$
    a(t,n) = 1+sum_{i=0}^{n-1}a(t-1,i)
    $$



    Working backwards, we define $a(0,n) = 1$ and $a(-1,n) = 0$ for all $n$. These definitions will simplify our base case.



    The code



    We define a function m(t) that returns the first 20 elements of the sequence at tier t. If t is nonnegative, we use the recursive formula above; if t is -1, we return an empty list. The empty list works as a base case because the result of each recursive call is sliced ([:n]) and then summed. Slicing an empty list gives an empty list, and summing an empty list gives 0. That's exactly the result we want, since tier $-1$ should behave like a constant sequence of all $0$'s.



    m=lambda t:                     # Define a function m(t):
    [ ] # List comprehension
    for n in range( ) # for each n from 0 up to but not including...
    ~n and 20 # 0 if n is -1, else 20:
    1+sum( ) # a(t,n) = 1 + sum of
    [:n] # the first n elements of
    m(t-1) # the previous tier (calculated recursively)





    share|improve this answer











    $endgroup$













    • $begingroup$
      61 bytes as a recursive lambda function (Significantly more inefficient).
      $endgroup$
      – ovs
      20 hours ago












    • $begingroup$
      @ovs Thanks! I found a couple more bytes by using a different base case, too.
      $endgroup$
      – DLosc
      20 hours ago












    • $begingroup$
      :( the nice way is too long
      $endgroup$
      – ASCII-only
      19 hours ago










    • $begingroup$
      or a combinations builtin, yeah
      $endgroup$
      – ASCII-only
      19 hours ago










    • $begingroup$
      closer (with stolen combinations function)
      $endgroup$
      – ASCII-only
      19 hours ago





















    3












    $begingroup$


    Pari/GP, 39 bytes



    n->Vec(sum(i=1,n+1,(1/x-1)^-i)+O(x^21))


    Try it online!






    Pari/GP, 40 bytes



    n->Vec((1-(1/x-1)^-n++)/(1-2*x)+O(x^20))


    Try it online!





    The generating function of the tier $n$ metasequence is:



    $$sum_{i=0}^nfrac{x^i}{(1-x)^{i+1}}=frac{1-left(frac{x}{1-x}right)^{1+n}}{1-2x}$$






    share|improve this answer











    $endgroup$





















      3












      $begingroup$


      dzaima/APL REPL, 14 bytes





      (+1,19↑)⍣⎕⍳20


      Try it online!



      (+1,19↑)⍣⎕⍳20
      ( )⍣⎕ repeat the function below input times:
      + cumulative sum of
      1, 1 prepended to
      19↑ the first 19 items of the previous iteration
      ⍳20 starting with the first 20 integers





      share|improve this answer











      $endgroup$













      • $begingroup$
        -1 byte using dzaima/APL: 1∘,1,
        $endgroup$
        – Adám
        yesterday










      • $begingroup$
        @Adám oh duh.. right
        $endgroup$
        – dzaima
        yesterday










      • $begingroup$
        Full program at 17: (≢↑(+1∘,)⍣⎕)20⍴1
        $endgroup$
        – Adám
        yesterday










      • $begingroup$
        14 bytes by using the REPL (add the -s flag).
        $endgroup$
        – Erik the Outgolfer
        23 hours ago












      • $begingroup$
        If you use the flag, language becomes -s btw (unless -s is repl flag?)
        $endgroup$
        – ASCII-only
        18 hours ago





















      3












      $begingroup$


      Perl 6, 34 32 bytes



      -2 bytes thanks to Jo King





      {(@,{[+] 1,|.[^19]}...*)[$_+1]}


      Try it online!



      Explanation



      {                              }  # Anonymous block
      , ...* # Construct infinite sequence of sequences
      @ # Start with empty array
      { } # Compute next element as
      [+] # cumulative sum of
      1, # one followed by
      |.[^19] # first 19 elements of previous sequence
      ( )[$_+1] # Take (n+1)th element





      share|improve this answer











      $endgroup$













      • $begingroup$
        29 bytes (the $^a instead of $_ is necessary)
        $endgroup$
        – Jo King
        20 hours ago








      • 1




        $begingroup$
        @JoKing Nice, but this assumes that $_ is undefined when calling the function. I prefer solutions that don't depend on the state of global variables.
        $endgroup$
        – nwellnhof
        9 hours ago



















      2












      $begingroup$


      Python 3.8 (pre-release), 62 bytes





      f=lambda n:[t:=1]+[t:=t+n for n in(n and f(n-1)[:-1]or[0]*19)]


      Try it online!





      Explanation



      f=lambda n:     # funtion takes a single argument
      [t:=1] # This evaluates to [1] and assigns 1 to t
      # assignment expressions are a new feature of Python 3.8
      + # concatenated to
      [ .... ] # list comprehension

      # The list comprehesion works together with the
      # assignment expression as a scan function:
      [t := t+n for n in it]
      # This calculates all partial sums of it
      # (plus the initial value of t, which is 1 here)

      # The list comprehension iterates
      # over the first 19 entries of f(n-1)
      # or over a list of zeros for n=0
      for n in (n and f(n-1)[:-1] or [0]*19)





      share|improve this answer











      $endgroup$





















        2












        $begingroup$


        Brain-Flak, 84 82 bytes



        <>((()()()()()){}){({}[((()))])}{}<>{({}[(())]<<>{({}<>({}))<>}<>{}{({}<>)<>}>)}<>


        Try it online!



        Annotated



        <>               Switch to the off stack
        ((()()()()()){}) Push 10
        {({}[((()))])}{} Make twice that many 1s
        <> Switch back
        { While ...
        ({}[(())]< Subtract one from the input and push 1
        <> Switch
        { For every x on the stack
        ({}<>({}))<> Remove x and add it to a copy of the other TOS
        } End loop
        <>{} Remove 1 element to keep it 20
        {({}<>)<>} Copy everything back to the other stack
        >)}<> End scopes and loops


        Try it online!






        share|improve this answer









        $endgroup$





















          1












          $begingroup$

          JavaScript (ES6),  68  67 bytes





          f=(n,a=[...f+f])=>n--?f(n,[s=1,...a.map(x=>s-=~--x)]):a.slice(0,20)


          Try it online!





          JavaScript (ES6), 63 bytes



          NB: this version works for $nle20$.





          f=(n,a=[...Array(20-n)])=>n--?f(n,[s=1,...a.map(x=>s+=x||1)]):a


          Try it online!






          share|improve this answer











          $endgroup$





















            1












            $begingroup$


            J, 24 bytes



            <:(1+/@,])^:[(1+i.20)"_


            Try it online!



            NOTE: Turns out this is a translation of dzaima's APL answer, though I actually didn't notice it before writing this.



            explanation



            <: (1 +/@, ])^:[ (1+i.20)"_
            <: NB. input minus 1 (left input)
            (1+i.20)"_ NB. 1..20 (right input)
            ( )^:[ NB. apply verb in parens
            NB. "left input" times
            (1 , ]) NB. prepend 1 to right input
            ( +/@ ) NB. and take scan sum





            share|improve this answer











            $endgroup$





















              1












              $begingroup$


              Wolfram Language (Mathematica), 42 bytes



              Nest[FoldList[Plus,1,#]&,Range[21-#],#-1]&


              Try it online!






              share|improve this answer









              $endgroup$





















                1












                $begingroup$

                Ruby, 49 bytes



                f=->n{n<1?[1]*20:[o=1]+f[n-1][0,19].map{|x|o+=x}}


                Recursive definition: Tier 0 is 1,1,1,1... and each subsequent tier is 1 followed by a sequence whose first differences are the previous tier. Annoyingly this would give me 21 values if I didn't explicitly slice out the first 20; seems like there should be a way to shorten this by avoiding that.






                share|improve this answer











                $endgroup$













                • $begingroup$
                  tio.run/#ruby pls
                  $endgroup$
                  – ASCII-only
                  19 hours ago










                • $begingroup$
                  also 49
                  $endgroup$
                  – ASCII-only
                  19 hours ago










                • $begingroup$
                  46
                  $endgroup$
                  – ASCII-only
                  19 hours ago





















                1












                $begingroup$


                Retina, 59 bytes



                .+
                19*$(_,


                Replace the input with 19 1s (in unary). (The 20th value is 0 because it always gets deleted by the first pass through the loop.)



                "$+"{`
                )`


                Repeat the loop the original input number of times.



                (.+),_*
                _,$1


                Remove the last element and prefix a 1.



                _+(?<=((_)|,)+)
                $#2*


                Calculate the cumulative sum.



                _+
                $.&


                Convert to decimal.



                Try it online!






                share|improve this answer









                $endgroup$





















                  1












                  $begingroup$


                  JavaScript (Node.js), 58 bytes





                  t=>Array(20).fill(t).map(g=(t,i)=>i--*t?g(t,i)+g(t-1,i):1)


                  Try it online!



                  It is trivial to write down following recursive formula based on the description in question
                  $$ g(t,i)=begin{cases}
                  g(t,i-1)+g(t-1,i-1) & text{if} quad icdot t>0 \
                  1 & text{if} quad icdot t=0 \
                  end{cases} $$

                  And you just need to generate an Array of 20 elements with $[g(t,0)dots g(t,19)]$






                  share|improve this answer











                  $endgroup$





















                    1












                    $begingroup$


                    05AB1E, 11 9 bytes



                    20LIF.¥>¨


                    0-indexed



                    Try it online or verify all test cases.



                    Explanation:





                    20L        # Create a list in the range [1,20]
                    IF # Loop the input amount of times:
                    .¥ # Get the cumulative sum of the current list with 0 prepended automatically
                    > # Increase each value in this list by 1
                    ¨ # Remove the trailing 21th item from the list
                    # (after the loop, output the result-list implicitly)





                    share|improve this answer











                    $endgroup$









                    • 1




                      $begingroup$
                      Nice use of !
                      $endgroup$
                      – Emigna
                      10 hours ago



















                    0












                    $begingroup$

                    Ruby, 74 bytes



                    a=->b{c=[1];d=0;b==1?c=(1..20).to_a: 19.times{c<<c[d]+(a[b-1])[d];d+=1};c}



                    Ungolfed version:



                    def seq num
                    ary = [1]
                    index = 0
                    if num == 1
                    ary = (1..20).to_a
                    else
                    19.times{ary << ary[index]+seq(num-1)[index]; index+=1}
                    end
                    return ary
                    end


                    Quite resource-intensive--the online version can't calculate the 13th metasequence.



                    Try it online






                    share|improve this answer









                    $endgroup$





















                      0












                      $begingroup$


                      Jelly, 10 bytes



                      20RṖ1;ÄƲ⁸¡


                      Try it online!



                      0-indexed.






                      share|improve this answer









                      $endgroup$





















                        0












                        $begingroup$


                        R, 59 bytes





                        Reduce(function(x,y)diffinv(x,,,y),!!1:scan(),!!1:19)[1:20]


                        Try it online!



                        Repeated diffinv with xi=1, and subset out the first 20 terms.






                        share|improve this answer









                        $endgroup$





















                          0












                          $begingroup$


                          C# (Visual C# Interactive Compiler), 120 bytes





                          n=>{for(long i=-1,h=0,m=0;++i<20;Print(i<1?1:h))for(m=h=0;m<=n;)h+=f(i)/(f(m)*f(i-m++));long f(long a)=>a>1?a*f(a-1):1;}


                          Try it online!



                          Based off of alephalpha's formula.






                          share|improve this answer









                          $endgroup$





















                            0












                            $begingroup$


                            K (oK), 18 bytes



                            {x(+1,19#)/1+!20}


                            Try it online!



                            0-indexed






                            share|improve this answer









                            $endgroup$





















                              0












                              $begingroup$

                              Perl 5, 48 bytes



                              $x=1,@A=(1,map$x+=$_,@A[0..18])for 0..$_;$_="@A"


                              TIO






                              share|improve this answer









                              $endgroup$





















                                0












                                $begingroup$


                                Japt, 15 bytes



                                0-indexed; replace h with p for 1-indexed.



                                ÈîXi1 å+}gNh20õ


                                Try it






                                share|improve this answer









                                $endgroup$













                                  Your Answer





                                  StackExchange.ifUsing("editor", function () {
                                  return StackExchange.using("mathjaxEditing", function () {
                                  StackExchange.MarkdownEditor.creationCallbacks.add(function (editor, postfix) {
                                  StackExchange.mathjaxEditing.prepareWmdForMathJax(editor, postfix, [["\$", "\$"]]);
                                  });
                                  });
                                  }, "mathjax-editing");

                                  StackExchange.ifUsing("editor", function () {
                                  StackExchange.using("externalEditor", function () {
                                  StackExchange.using("snippets", function () {
                                  StackExchange.snippets.init();
                                  });
                                  });
                                  }, "code-snippets");

                                  StackExchange.ready(function() {
                                  var channelOptions = {
                                  tags: "".split(" "),
                                  id: "200"
                                  };
                                  initTagRenderer("".split(" "), "".split(" "), channelOptions);

                                  StackExchange.using("externalEditor", function() {
                                  // Have to fire editor after snippets, if snippets enabled
                                  if (StackExchange.settings.snippets.snippetsEnabled) {
                                  StackExchange.using("snippets", function() {
                                  createEditor();
                                  });
                                  }
                                  else {
                                  createEditor();
                                  }
                                  });

                                  function createEditor() {
                                  StackExchange.prepareEditor({
                                  heartbeatType: 'answer',
                                  autoActivateHeartbeat: false,
                                  convertImagesToLinks: false,
                                  noModals: true,
                                  showLowRepImageUploadWarning: true,
                                  reputationToPostImages: null,
                                  bindNavPrevention: true,
                                  postfix: "",
                                  imageUploader: {
                                  brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
                                  contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
                                  allowUrls: true
                                  },
                                  onDemand: true,
                                  discardSelector: ".discard-answer"
                                  ,immediatelyShowMarkdownHelp:true
                                  });


                                  }
                                  });














                                  draft saved

                                  draft discarded


















                                  StackExchange.ready(
                                  function () {
                                  StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fcodegolf.stackexchange.com%2fquestions%2f180855%2fmake-me-a-metasequence%23new-answer', 'question_page');
                                  }
                                  );

                                  Post as a guest















                                  Required, but never shown

























                                  23 Answers
                                  23






                                  active

                                  oldest

                                  votes








                                  23 Answers
                                  23






                                  active

                                  oldest

                                  votes









                                  active

                                  oldest

                                  votes






                                  active

                                  oldest

                                  votes









                                  14












                                  $begingroup$


                                  Wolfram Language (Mathematica), 34 bytes



                                  0~Range~19~Binomial~i~Sum~{i,0,#}&


                                  Try it online!



                                  The tier $n$ metasequence is the sum of the first $n+1$ elements of each row of the Pascal triangle.






                                  share|improve this answer











                                  $endgroup$













                                  • $begingroup$
                                    Nice insight! :)
                                    $endgroup$
                                    – Lynn
                                    23 hours ago










                                  • $begingroup$
                                    There's almost a built-in for that, but unfortunately it's longer.
                                    $endgroup$
                                    – Peter Taylor
                                    6 hours ago










                                  • $begingroup$
                                    I don't know enough WL to do anything useful in it, but it seems to me that it might benefit from the identity $$T(n,k) = begin{cases}1 & textrm{if }k=0 \ 2T(n,k-1) - binom{k-1}{n} & textrm{otherwise}end{cases}$$
                                    $endgroup$
                                    – Peter Taylor
                                    3 hours ago


















                                  14












                                  $begingroup$


                                  Wolfram Language (Mathematica), 34 bytes



                                  0~Range~19~Binomial~i~Sum~{i,0,#}&


                                  Try it online!



                                  The tier $n$ metasequence is the sum of the first $n+1$ elements of each row of the Pascal triangle.






                                  share|improve this answer











                                  $endgroup$













                                  • $begingroup$
                                    Nice insight! :)
                                    $endgroup$
                                    – Lynn
                                    23 hours ago










                                  • $begingroup$
                                    There's almost a built-in for that, but unfortunately it's longer.
                                    $endgroup$
                                    – Peter Taylor
                                    6 hours ago










                                  • $begingroup$
                                    I don't know enough WL to do anything useful in it, but it seems to me that it might benefit from the identity $$T(n,k) = begin{cases}1 & textrm{if }k=0 \ 2T(n,k-1) - binom{k-1}{n} & textrm{otherwise}end{cases}$$
                                    $endgroup$
                                    – Peter Taylor
                                    3 hours ago
















                                  14












                                  14








                                  14





                                  $begingroup$


                                  Wolfram Language (Mathematica), 34 bytes



                                  0~Range~19~Binomial~i~Sum~{i,0,#}&


                                  Try it online!



                                  The tier $n$ metasequence is the sum of the first $n+1$ elements of each row of the Pascal triangle.






                                  share|improve this answer











                                  $endgroup$




                                  Wolfram Language (Mathematica), 34 bytes



                                  0~Range~19~Binomial~i~Sum~{i,0,#}&


                                  Try it online!



                                  The tier $n$ metasequence is the sum of the first $n+1$ elements of each row of the Pascal triangle.







                                  share|improve this answer














                                  share|improve this answer



                                  share|improve this answer








                                  edited 14 hours ago

























                                  answered yesterday









                                  alephalphaalephalpha

                                  21.7k32994




                                  21.7k32994












                                  • $begingroup$
                                    Nice insight! :)
                                    $endgroup$
                                    – Lynn
                                    23 hours ago










                                  • $begingroup$
                                    There's almost a built-in for that, but unfortunately it's longer.
                                    $endgroup$
                                    – Peter Taylor
                                    6 hours ago










                                  • $begingroup$
                                    I don't know enough WL to do anything useful in it, but it seems to me that it might benefit from the identity $$T(n,k) = begin{cases}1 & textrm{if }k=0 \ 2T(n,k-1) - binom{k-1}{n} & textrm{otherwise}end{cases}$$
                                    $endgroup$
                                    – Peter Taylor
                                    3 hours ago




















                                  • $begingroup$
                                    Nice insight! :)
                                    $endgroup$
                                    – Lynn
                                    23 hours ago










                                  • $begingroup$
                                    There's almost a built-in for that, but unfortunately it's longer.
                                    $endgroup$
                                    – Peter Taylor
                                    6 hours ago










                                  • $begingroup$
                                    I don't know enough WL to do anything useful in it, but it seems to me that it might benefit from the identity $$T(n,k) = begin{cases}1 & textrm{if }k=0 \ 2T(n,k-1) - binom{k-1}{n} & textrm{otherwise}end{cases}$$
                                    $endgroup$
                                    – Peter Taylor
                                    3 hours ago


















                                  $begingroup$
                                  Nice insight! :)
                                  $endgroup$
                                  – Lynn
                                  23 hours ago




                                  $begingroup$
                                  Nice insight! :)
                                  $endgroup$
                                  – Lynn
                                  23 hours ago












                                  $begingroup$
                                  There's almost a built-in for that, but unfortunately it's longer.
                                  $endgroup$
                                  – Peter Taylor
                                  6 hours ago




                                  $begingroup$
                                  There's almost a built-in for that, but unfortunately it's longer.
                                  $endgroup$
                                  – Peter Taylor
                                  6 hours ago












                                  $begingroup$
                                  I don't know enough WL to do anything useful in it, but it seems to me that it might benefit from the identity $$T(n,k) = begin{cases}1 & textrm{if }k=0 \ 2T(n,k-1) - binom{k-1}{n} & textrm{otherwise}end{cases}$$
                                  $endgroup$
                                  – Peter Taylor
                                  3 hours ago






                                  $begingroup$
                                  I don't know enough WL to do anything useful in it, but it seems to me that it might benefit from the identity $$T(n,k) = begin{cases}1 & textrm{if }k=0 \ 2T(n,k-1) - binom{k-1}{n} & textrm{otherwise}end{cases}$$
                                  $endgroup$
                                  – Peter Taylor
                                  3 hours ago













                                  13












                                  $begingroup$


                                  Haskell, 35 bytes





                                  take 20.(iterate(scanl(+)1)[1..]!!)


                                  Try it online! Uses 0-indexed inputs (f 4 returns tier 5.)




                                  Haskell, 36 bytes





                                  f 1=[1..20]
                                  f n=init$scanl(+)1$f$n-1


                                  Try it online! Uses 1-indexed inputs (f 5 returns tier 5.)



                                  Explanation



                                  scanl (+) 1 is a function that takes partial sums of a list, starting from (and prepending) 1.




                                  For example: scanl (+) 1 [20,300,4000] equals [1,21,321,4321].




                                  It turns out that tier $n$ is just this function applied $ (n-1) $ times to the list $[1,2,3,dots]$.



                                  (Or equivalently: $n$ times to a list of all ones.)



                                  We use either init or [1..20-n] to account for the list getting longer by $1$ every application.






                                  share|improve this answer











                                  $endgroup$









                                  • 1




                                    $begingroup$
                                    [1..20-n] isn't going to work for $n > 20$
                                    $endgroup$
                                    – Peter Taylor
                                    7 hours ago










                                  • $begingroup$
                                    take 20.(iterate(scanl(+)1)[1..]!!) would only cost a byte more to fix that
                                    $endgroup$
                                    – H.PWiz
                                    2 hours ago
















                                  13












                                  $begingroup$


                                  Haskell, 35 bytes





                                  take 20.(iterate(scanl(+)1)[1..]!!)


                                  Try it online! Uses 0-indexed inputs (f 4 returns tier 5.)




                                  Haskell, 36 bytes





                                  f 1=[1..20]
                                  f n=init$scanl(+)1$f$n-1


                                  Try it online! Uses 1-indexed inputs (f 5 returns tier 5.)



                                  Explanation



                                  scanl (+) 1 is a function that takes partial sums of a list, starting from (and prepending) 1.




                                  For example: scanl (+) 1 [20,300,4000] equals [1,21,321,4321].




                                  It turns out that tier $n$ is just this function applied $ (n-1) $ times to the list $[1,2,3,dots]$.



                                  (Or equivalently: $n$ times to a list of all ones.)



                                  We use either init or [1..20-n] to account for the list getting longer by $1$ every application.






                                  share|improve this answer











                                  $endgroup$









                                  • 1




                                    $begingroup$
                                    [1..20-n] isn't going to work for $n > 20$
                                    $endgroup$
                                    – Peter Taylor
                                    7 hours ago










                                  • $begingroup$
                                    take 20.(iterate(scanl(+)1)[1..]!!) would only cost a byte more to fix that
                                    $endgroup$
                                    – H.PWiz
                                    2 hours ago














                                  13












                                  13








                                  13





                                  $begingroup$


                                  Haskell, 35 bytes





                                  take 20.(iterate(scanl(+)1)[1..]!!)


                                  Try it online! Uses 0-indexed inputs (f 4 returns tier 5.)




                                  Haskell, 36 bytes





                                  f 1=[1..20]
                                  f n=init$scanl(+)1$f$n-1


                                  Try it online! Uses 1-indexed inputs (f 5 returns tier 5.)



                                  Explanation



                                  scanl (+) 1 is a function that takes partial sums of a list, starting from (and prepending) 1.




                                  For example: scanl (+) 1 [20,300,4000] equals [1,21,321,4321].




                                  It turns out that tier $n$ is just this function applied $ (n-1) $ times to the list $[1,2,3,dots]$.



                                  (Or equivalently: $n$ times to a list of all ones.)



                                  We use either init or [1..20-n] to account for the list getting longer by $1$ every application.






                                  share|improve this answer











                                  $endgroup$




                                  Haskell, 35 bytes





                                  take 20.(iterate(scanl(+)1)[1..]!!)


                                  Try it online! Uses 0-indexed inputs (f 4 returns tier 5.)




                                  Haskell, 36 bytes





                                  f 1=[1..20]
                                  f n=init$scanl(+)1$f$n-1


                                  Try it online! Uses 1-indexed inputs (f 5 returns tier 5.)



                                  Explanation



                                  scanl (+) 1 is a function that takes partial sums of a list, starting from (and prepending) 1.




                                  For example: scanl (+) 1 [20,300,4000] equals [1,21,321,4321].




                                  It turns out that tier $n$ is just this function applied $ (n-1) $ times to the list $[1,2,3,dots]$.



                                  (Or equivalently: $n$ times to a list of all ones.)



                                  We use either init or [1..20-n] to account for the list getting longer by $1$ every application.







                                  share|improve this answer














                                  share|improve this answer



                                  share|improve this answer








                                  edited 2 hours ago

























                                  answered yesterday









                                  LynnLynn

                                  50.2k797231




                                  50.2k797231








                                  • 1




                                    $begingroup$
                                    [1..20-n] isn't going to work for $n > 20$
                                    $endgroup$
                                    – Peter Taylor
                                    7 hours ago










                                  • $begingroup$
                                    take 20.(iterate(scanl(+)1)[1..]!!) would only cost a byte more to fix that
                                    $endgroup$
                                    – H.PWiz
                                    2 hours ago














                                  • 1




                                    $begingroup$
                                    [1..20-n] isn't going to work for $n > 20$
                                    $endgroup$
                                    – Peter Taylor
                                    7 hours ago










                                  • $begingroup$
                                    take 20.(iterate(scanl(+)1)[1..]!!) would only cost a byte more to fix that
                                    $endgroup$
                                    – H.PWiz
                                    2 hours ago








                                  1




                                  1




                                  $begingroup$
                                  [1..20-n] isn't going to work for $n > 20$
                                  $endgroup$
                                  – Peter Taylor
                                  7 hours ago




                                  $begingroup$
                                  [1..20-n] isn't going to work for $n > 20$
                                  $endgroup$
                                  – Peter Taylor
                                  7 hours ago












                                  $begingroup$
                                  take 20.(iterate(scanl(+)1)[1..]!!) would only cost a byte more to fix that
                                  $endgroup$
                                  – H.PWiz
                                  2 hours ago




                                  $begingroup$
                                  take 20.(iterate(scanl(+)1)[1..]!!) would only cost a byte more to fix that
                                  $endgroup$
                                  – H.PWiz
                                  2 hours ago











                                  6












                                  $begingroup$


                                  Jelly, 8 7 bytes



                                  20ḶcþŻS


                                  Try it online!



                                     cþ       Table of binom(x,y) where:
                                  20Ḷ x = [0..19]
                                  Ż y = [0..n] e.g. n=3 → [[1, 1, 1, 1, 1, 1, …]
                                  [0, 1, 2, 3, 4, 5, …]
                                  [0, 0, 1, 3, 6, 10, …]
                                  [0, 0, 0, 1, 4, 10, …]]

                                  S Columnwise sum. → [1, 2, 4, 8, 15, 26, …]


                                  This uses @alephalpha’s insight that $$text{meta-sequence}_n(i) = sum_{k=0}^n binom ik.$$






                                  share|improve this answer











                                  $endgroup$


















                                    6












                                    $begingroup$


                                    Jelly, 8 7 bytes



                                    20ḶcþŻS


                                    Try it online!



                                       cþ       Table of binom(x,y) where:
                                    20Ḷ x = [0..19]
                                    Ż y = [0..n] e.g. n=3 → [[1, 1, 1, 1, 1, 1, …]
                                    [0, 1, 2, 3, 4, 5, …]
                                    [0, 0, 1, 3, 6, 10, …]
                                    [0, 0, 0, 1, 4, 10, …]]

                                    S Columnwise sum. → [1, 2, 4, 8, 15, 26, …]


                                    This uses @alephalpha’s insight that $$text{meta-sequence}_n(i) = sum_{k=0}^n binom ik.$$






                                    share|improve this answer











                                    $endgroup$
















                                      6












                                      6








                                      6





                                      $begingroup$


                                      Jelly, 8 7 bytes



                                      20ḶcþŻS


                                      Try it online!



                                         cþ       Table of binom(x,y) where:
                                      20Ḷ x = [0..19]
                                      Ż y = [0..n] e.g. n=3 → [[1, 1, 1, 1, 1, 1, …]
                                      [0, 1, 2, 3, 4, 5, …]
                                      [0, 0, 1, 3, 6, 10, …]
                                      [0, 0, 0, 1, 4, 10, …]]

                                      S Columnwise sum. → [1, 2, 4, 8, 15, 26, …]


                                      This uses @alephalpha’s insight that $$text{meta-sequence}_n(i) = sum_{k=0}^n binom ik.$$






                                      share|improve this answer











                                      $endgroup$




                                      Jelly, 8 7 bytes



                                      20ḶcþŻS


                                      Try it online!



                                         cþ       Table of binom(x,y) where:
                                      20Ḷ x = [0..19]
                                      Ż y = [0..n] e.g. n=3 → [[1, 1, 1, 1, 1, 1, …]
                                      [0, 1, 2, 3, 4, 5, …]
                                      [0, 0, 1, 3, 6, 10, …]
                                      [0, 0, 0, 1, 4, 10, …]]

                                      S Columnwise sum. → [1, 2, 4, 8, 15, 26, …]


                                      This uses @alephalpha’s insight that $$text{meta-sequence}_n(i) = sum_{k=0}^n binom ik.$$







                                      share|improve this answer














                                      share|improve this answer



                                      share|improve this answer








                                      edited 2 hours ago

























                                      answered 22 hours ago









                                      LynnLynn

                                      50.2k797231




                                      50.2k797231























                                          4












                                          $begingroup$


                                          Python 2, 69 58 55 bytes



                                          Saved bytes thanks to ovs and Jo King; also, it works in Python 3 now as well.





                                          m=lambda t:[1+sum(m(t-1)[:n])for n in range(~t and 20)]


                                          Try it online!



                                          The math



                                          Let $a(t,n)$ be the $n^{th}$ term (0-indexed) of the sequence at tier $t$. A little analysis leads to the following recurrence formula:



                                          $$
                                          a(t,n) = 1+sum_{i=0}^{n-1}a(t-1,i)
                                          $$



                                          Working backwards, we define $a(0,n) = 1$ and $a(-1,n) = 0$ for all $n$. These definitions will simplify our base case.



                                          The code



                                          We define a function m(t) that returns the first 20 elements of the sequence at tier t. If t is nonnegative, we use the recursive formula above; if t is -1, we return an empty list. The empty list works as a base case because the result of each recursive call is sliced ([:n]) and then summed. Slicing an empty list gives an empty list, and summing an empty list gives 0. That's exactly the result we want, since tier $-1$ should behave like a constant sequence of all $0$'s.



                                          m=lambda t:                     # Define a function m(t):
                                          [ ] # List comprehension
                                          for n in range( ) # for each n from 0 up to but not including...
                                          ~n and 20 # 0 if n is -1, else 20:
                                          1+sum( ) # a(t,n) = 1 + sum of
                                          [:n] # the first n elements of
                                          m(t-1) # the previous tier (calculated recursively)





                                          share|improve this answer











                                          $endgroup$













                                          • $begingroup$
                                            61 bytes as a recursive lambda function (Significantly more inefficient).
                                            $endgroup$
                                            – ovs
                                            20 hours ago












                                          • $begingroup$
                                            @ovs Thanks! I found a couple more bytes by using a different base case, too.
                                            $endgroup$
                                            – DLosc
                                            20 hours ago












                                          • $begingroup$
                                            :( the nice way is too long
                                            $endgroup$
                                            – ASCII-only
                                            19 hours ago










                                          • $begingroup$
                                            or a combinations builtin, yeah
                                            $endgroup$
                                            – ASCII-only
                                            19 hours ago










                                          • $begingroup$
                                            closer (with stolen combinations function)
                                            $endgroup$
                                            – ASCII-only
                                            19 hours ago


















                                          4












                                          $begingroup$


                                          Python 2, 69 58 55 bytes



                                          Saved bytes thanks to ovs and Jo King; also, it works in Python 3 now as well.





                                          m=lambda t:[1+sum(m(t-1)[:n])for n in range(~t and 20)]


                                          Try it online!



                                          The math



                                          Let $a(t,n)$ be the $n^{th}$ term (0-indexed) of the sequence at tier $t$. A little analysis leads to the following recurrence formula:



                                          $$
                                          a(t,n) = 1+sum_{i=0}^{n-1}a(t-1,i)
                                          $$



                                          Working backwards, we define $a(0,n) = 1$ and $a(-1,n) = 0$ for all $n$. These definitions will simplify our base case.



                                          The code



                                          We define a function m(t) that returns the first 20 elements of the sequence at tier t. If t is nonnegative, we use the recursive formula above; if t is -1, we return an empty list. The empty list works as a base case because the result of each recursive call is sliced ([:n]) and then summed. Slicing an empty list gives an empty list, and summing an empty list gives 0. That's exactly the result we want, since tier $-1$ should behave like a constant sequence of all $0$'s.



                                          m=lambda t:                     # Define a function m(t):
                                          [ ] # List comprehension
                                          for n in range( ) # for each n from 0 up to but not including...
                                          ~n and 20 # 0 if n is -1, else 20:
                                          1+sum( ) # a(t,n) = 1 + sum of
                                          [:n] # the first n elements of
                                          m(t-1) # the previous tier (calculated recursively)





                                          share|improve this answer











                                          $endgroup$













                                          • $begingroup$
                                            61 bytes as a recursive lambda function (Significantly more inefficient).
                                            $endgroup$
                                            – ovs
                                            20 hours ago












                                          • $begingroup$
                                            @ovs Thanks! I found a couple more bytes by using a different base case, too.
                                            $endgroup$
                                            – DLosc
                                            20 hours ago












                                          • $begingroup$
                                            :( the nice way is too long
                                            $endgroup$
                                            – ASCII-only
                                            19 hours ago










                                          • $begingroup$
                                            or a combinations builtin, yeah
                                            $endgroup$
                                            – ASCII-only
                                            19 hours ago










                                          • $begingroup$
                                            closer (with stolen combinations function)
                                            $endgroup$
                                            – ASCII-only
                                            19 hours ago
















                                          4












                                          4








                                          4





                                          $begingroup$


                                          Python 2, 69 58 55 bytes



                                          Saved bytes thanks to ovs and Jo King; also, it works in Python 3 now as well.





                                          m=lambda t:[1+sum(m(t-1)[:n])for n in range(~t and 20)]


                                          Try it online!



                                          The math



                                          Let $a(t,n)$ be the $n^{th}$ term (0-indexed) of the sequence at tier $t$. A little analysis leads to the following recurrence formula:



                                          $$
                                          a(t,n) = 1+sum_{i=0}^{n-1}a(t-1,i)
                                          $$



                                          Working backwards, we define $a(0,n) = 1$ and $a(-1,n) = 0$ for all $n$. These definitions will simplify our base case.



                                          The code



                                          We define a function m(t) that returns the first 20 elements of the sequence at tier t. If t is nonnegative, we use the recursive formula above; if t is -1, we return an empty list. The empty list works as a base case because the result of each recursive call is sliced ([:n]) and then summed. Slicing an empty list gives an empty list, and summing an empty list gives 0. That's exactly the result we want, since tier $-1$ should behave like a constant sequence of all $0$'s.



                                          m=lambda t:                     # Define a function m(t):
                                          [ ] # List comprehension
                                          for n in range( ) # for each n from 0 up to but not including...
                                          ~n and 20 # 0 if n is -1, else 20:
                                          1+sum( ) # a(t,n) = 1 + sum of
                                          [:n] # the first n elements of
                                          m(t-1) # the previous tier (calculated recursively)





                                          share|improve this answer











                                          $endgroup$




                                          Python 2, 69 58 55 bytes



                                          Saved bytes thanks to ovs and Jo King; also, it works in Python 3 now as well.





                                          m=lambda t:[1+sum(m(t-1)[:n])for n in range(~t and 20)]


                                          Try it online!



                                          The math



                                          Let $a(t,n)$ be the $n^{th}$ term (0-indexed) of the sequence at tier $t$. A little analysis leads to the following recurrence formula:



                                          $$
                                          a(t,n) = 1+sum_{i=0}^{n-1}a(t-1,i)
                                          $$



                                          Working backwards, we define $a(0,n) = 1$ and $a(-1,n) = 0$ for all $n$. These definitions will simplify our base case.



                                          The code



                                          We define a function m(t) that returns the first 20 elements of the sequence at tier t. If t is nonnegative, we use the recursive formula above; if t is -1, we return an empty list. The empty list works as a base case because the result of each recursive call is sliced ([:n]) and then summed. Slicing an empty list gives an empty list, and summing an empty list gives 0. That's exactly the result we want, since tier $-1$ should behave like a constant sequence of all $0$'s.



                                          m=lambda t:                     # Define a function m(t):
                                          [ ] # List comprehension
                                          for n in range( ) # for each n from 0 up to but not including...
                                          ~n and 20 # 0 if n is -1, else 20:
                                          1+sum( ) # a(t,n) = 1 + sum of
                                          [:n] # the first n elements of
                                          m(t-1) # the previous tier (calculated recursively)






                                          share|improve this answer














                                          share|improve this answer



                                          share|improve this answer








                                          edited 19 hours ago

























                                          answered 20 hours ago









                                          DLoscDLosc

                                          19.3k33889




                                          19.3k33889












                                          • $begingroup$
                                            61 bytes as a recursive lambda function (Significantly more inefficient).
                                            $endgroup$
                                            – ovs
                                            20 hours ago












                                          • $begingroup$
                                            @ovs Thanks! I found a couple more bytes by using a different base case, too.
                                            $endgroup$
                                            – DLosc
                                            20 hours ago












                                          • $begingroup$
                                            :( the nice way is too long
                                            $endgroup$
                                            – ASCII-only
                                            19 hours ago










                                          • $begingroup$
                                            or a combinations builtin, yeah
                                            $endgroup$
                                            – ASCII-only
                                            19 hours ago










                                          • $begingroup$
                                            closer (with stolen combinations function)
                                            $endgroup$
                                            – ASCII-only
                                            19 hours ago




















                                          • $begingroup$
                                            61 bytes as a recursive lambda function (Significantly more inefficient).
                                            $endgroup$
                                            – ovs
                                            20 hours ago












                                          • $begingroup$
                                            @ovs Thanks! I found a couple more bytes by using a different base case, too.
                                            $endgroup$
                                            – DLosc
                                            20 hours ago












                                          • $begingroup$
                                            :( the nice way is too long
                                            $endgroup$
                                            – ASCII-only
                                            19 hours ago










                                          • $begingroup$
                                            or a combinations builtin, yeah
                                            $endgroup$
                                            – ASCII-only
                                            19 hours ago










                                          • $begingroup$
                                            closer (with stolen combinations function)
                                            $endgroup$
                                            – ASCII-only
                                            19 hours ago


















                                          $begingroup$
                                          61 bytes as a recursive lambda function (Significantly more inefficient).
                                          $endgroup$
                                          – ovs
                                          20 hours ago






                                          $begingroup$
                                          61 bytes as a recursive lambda function (Significantly more inefficient).
                                          $endgroup$
                                          – ovs
                                          20 hours ago














                                          $begingroup$
                                          @ovs Thanks! I found a couple more bytes by using a different base case, too.
                                          $endgroup$
                                          – DLosc
                                          20 hours ago






                                          $begingroup$
                                          @ovs Thanks! I found a couple more bytes by using a different base case, too.
                                          $endgroup$
                                          – DLosc
                                          20 hours ago














                                          $begingroup$
                                          :( the nice way is too long
                                          $endgroup$
                                          – ASCII-only
                                          19 hours ago




                                          $begingroup$
                                          :( the nice way is too long
                                          $endgroup$
                                          – ASCII-only
                                          19 hours ago












                                          $begingroup$
                                          or a combinations builtin, yeah
                                          $endgroup$
                                          – ASCII-only
                                          19 hours ago




                                          $begingroup$
                                          or a combinations builtin, yeah
                                          $endgroup$
                                          – ASCII-only
                                          19 hours ago












                                          $begingroup$
                                          closer (with stolen combinations function)
                                          $endgroup$
                                          – ASCII-only
                                          19 hours ago






                                          $begingroup$
                                          closer (with stolen combinations function)
                                          $endgroup$
                                          – ASCII-only
                                          19 hours ago













                                          3












                                          $begingroup$


                                          Pari/GP, 39 bytes



                                          n->Vec(sum(i=1,n+1,(1/x-1)^-i)+O(x^21))


                                          Try it online!






                                          Pari/GP, 40 bytes



                                          n->Vec((1-(1/x-1)^-n++)/(1-2*x)+O(x^20))


                                          Try it online!





                                          The generating function of the tier $n$ metasequence is:



                                          $$sum_{i=0}^nfrac{x^i}{(1-x)^{i+1}}=frac{1-left(frac{x}{1-x}right)^{1+n}}{1-2x}$$






                                          share|improve this answer











                                          $endgroup$


















                                            3












                                            $begingroup$


                                            Pari/GP, 39 bytes



                                            n->Vec(sum(i=1,n+1,(1/x-1)^-i)+O(x^21))


                                            Try it online!






                                            Pari/GP, 40 bytes



                                            n->Vec((1-(1/x-1)^-n++)/(1-2*x)+O(x^20))


                                            Try it online!





                                            The generating function of the tier $n$ metasequence is:



                                            $$sum_{i=0}^nfrac{x^i}{(1-x)^{i+1}}=frac{1-left(frac{x}{1-x}right)^{1+n}}{1-2x}$$






                                            share|improve this answer











                                            $endgroup$
















                                              3












                                              3








                                              3





                                              $begingroup$


                                              Pari/GP, 39 bytes



                                              n->Vec(sum(i=1,n+1,(1/x-1)^-i)+O(x^21))


                                              Try it online!






                                              Pari/GP, 40 bytes



                                              n->Vec((1-(1/x-1)^-n++)/(1-2*x)+O(x^20))


                                              Try it online!





                                              The generating function of the tier $n$ metasequence is:



                                              $$sum_{i=0}^nfrac{x^i}{(1-x)^{i+1}}=frac{1-left(frac{x}{1-x}right)^{1+n}}{1-2x}$$






                                              share|improve this answer











                                              $endgroup$




                                              Pari/GP, 39 bytes



                                              n->Vec(sum(i=1,n+1,(1/x-1)^-i)+O(x^21))


                                              Try it online!






                                              Pari/GP, 40 bytes



                                              n->Vec((1-(1/x-1)^-n++)/(1-2*x)+O(x^20))


                                              Try it online!





                                              The generating function of the tier $n$ metasequence is:



                                              $$sum_{i=0}^nfrac{x^i}{(1-x)^{i+1}}=frac{1-left(frac{x}{1-x}right)^{1+n}}{1-2x}$$







                                              share|improve this answer














                                              share|improve this answer



                                              share|improve this answer








                                              edited yesterday

























                                              answered yesterday









                                              alephalphaalephalpha

                                              21.7k32994




                                              21.7k32994























                                                  3












                                                  $begingroup$


                                                  dzaima/APL REPL, 14 bytes





                                                  (+1,19↑)⍣⎕⍳20


                                                  Try it online!



                                                  (+1,19↑)⍣⎕⍳20
                                                  ( )⍣⎕ repeat the function below input times:
                                                  + cumulative sum of
                                                  1, 1 prepended to
                                                  19↑ the first 19 items of the previous iteration
                                                  ⍳20 starting with the first 20 integers





                                                  share|improve this answer











                                                  $endgroup$













                                                  • $begingroup$
                                                    -1 byte using dzaima/APL: 1∘,1,
                                                    $endgroup$
                                                    – Adám
                                                    yesterday










                                                  • $begingroup$
                                                    @Adám oh duh.. right
                                                    $endgroup$
                                                    – dzaima
                                                    yesterday










                                                  • $begingroup$
                                                    Full program at 17: (≢↑(+1∘,)⍣⎕)20⍴1
                                                    $endgroup$
                                                    – Adám
                                                    yesterday










                                                  • $begingroup$
                                                    14 bytes by using the REPL (add the -s flag).
                                                    $endgroup$
                                                    – Erik the Outgolfer
                                                    23 hours ago












                                                  • $begingroup$
                                                    If you use the flag, language becomes -s btw (unless -s is repl flag?)
                                                    $endgroup$
                                                    – ASCII-only
                                                    18 hours ago


















                                                  3












                                                  $begingroup$


                                                  dzaima/APL REPL, 14 bytes





                                                  (+1,19↑)⍣⎕⍳20


                                                  Try it online!



                                                  (+1,19↑)⍣⎕⍳20
                                                  ( )⍣⎕ repeat the function below input times:
                                                  + cumulative sum of
                                                  1, 1 prepended to
                                                  19↑ the first 19 items of the previous iteration
                                                  ⍳20 starting with the first 20 integers





                                                  share|improve this answer











                                                  $endgroup$













                                                  • $begingroup$
                                                    -1 byte using dzaima/APL: 1∘,1,
                                                    $endgroup$
                                                    – Adám
                                                    yesterday










                                                  • $begingroup$
                                                    @Adám oh duh.. right
                                                    $endgroup$
                                                    – dzaima
                                                    yesterday










                                                  • $begingroup$
                                                    Full program at 17: (≢↑(+1∘,)⍣⎕)20⍴1
                                                    $endgroup$
                                                    – Adám
                                                    yesterday










                                                  • $begingroup$
                                                    14 bytes by using the REPL (add the -s flag).
                                                    $endgroup$
                                                    – Erik the Outgolfer
                                                    23 hours ago












                                                  • $begingroup$
                                                    If you use the flag, language becomes -s btw (unless -s is repl flag?)
                                                    $endgroup$
                                                    – ASCII-only
                                                    18 hours ago
















                                                  3












                                                  3








                                                  3





                                                  $begingroup$


                                                  dzaima/APL REPL, 14 bytes





                                                  (+1,19↑)⍣⎕⍳20


                                                  Try it online!



                                                  (+1,19↑)⍣⎕⍳20
                                                  ( )⍣⎕ repeat the function below input times:
                                                  + cumulative sum of
                                                  1, 1 prepended to
                                                  19↑ the first 19 items of the previous iteration
                                                  ⍳20 starting with the first 20 integers





                                                  share|improve this answer











                                                  $endgroup$




                                                  dzaima/APL REPL, 14 bytes





                                                  (+1,19↑)⍣⎕⍳20


                                                  Try it online!



                                                  (+1,19↑)⍣⎕⍳20
                                                  ( )⍣⎕ repeat the function below input times:
                                                  + cumulative sum of
                                                  1, 1 prepended to
                                                  19↑ the first 19 items of the previous iteration
                                                  ⍳20 starting with the first 20 integers






                                                  share|improve this answer














                                                  share|improve this answer



                                                  share|improve this answer








                                                  edited 23 hours ago

























                                                  answered yesterday









                                                  dzaimadzaima

                                                  15.2k21856




                                                  15.2k21856












                                                  • $begingroup$
                                                    -1 byte using dzaima/APL: 1∘,1,
                                                    $endgroup$
                                                    – Adám
                                                    yesterday










                                                  • $begingroup$
                                                    @Adám oh duh.. right
                                                    $endgroup$
                                                    – dzaima
                                                    yesterday










                                                  • $begingroup$
                                                    Full program at 17: (≢↑(+1∘,)⍣⎕)20⍴1
                                                    $endgroup$
                                                    – Adám
                                                    yesterday










                                                  • $begingroup$
                                                    14 bytes by using the REPL (add the -s flag).
                                                    $endgroup$
                                                    – Erik the Outgolfer
                                                    23 hours ago












                                                  • $begingroup$
                                                    If you use the flag, language becomes -s btw (unless -s is repl flag?)
                                                    $endgroup$
                                                    – ASCII-only
                                                    18 hours ago




















                                                  • $begingroup$
                                                    -1 byte using dzaima/APL: 1∘,1,
                                                    $endgroup$
                                                    – Adám
                                                    yesterday










                                                  • $begingroup$
                                                    @Adám oh duh.. right
                                                    $endgroup$
                                                    – dzaima
                                                    yesterday










                                                  • $begingroup$
                                                    Full program at 17: (≢↑(+1∘,)⍣⎕)20⍴1
                                                    $endgroup$
                                                    – Adám
                                                    yesterday










                                                  • $begingroup$
                                                    14 bytes by using the REPL (add the -s flag).
                                                    $endgroup$
                                                    – Erik the Outgolfer
                                                    23 hours ago












                                                  • $begingroup$
                                                    If you use the flag, language becomes -s btw (unless -s is repl flag?)
                                                    $endgroup$
                                                    – ASCII-only
                                                    18 hours ago


















                                                  $begingroup$
                                                  -1 byte using dzaima/APL: 1∘,1,
                                                  $endgroup$
                                                  – Adám
                                                  yesterday




                                                  $begingroup$
                                                  -1 byte using dzaima/APL: 1∘,1,
                                                  $endgroup$
                                                  – Adám
                                                  yesterday












                                                  $begingroup$
                                                  @Adám oh duh.. right
                                                  $endgroup$
                                                  – dzaima
                                                  yesterday




                                                  $begingroup$
                                                  @Adám oh duh.. right
                                                  $endgroup$
                                                  – dzaima
                                                  yesterday












                                                  $begingroup$
                                                  Full program at 17: (≢↑(+1∘,)⍣⎕)20⍴1
                                                  $endgroup$
                                                  – Adám
                                                  yesterday




                                                  $begingroup$
                                                  Full program at 17: (≢↑(+1∘,)⍣⎕)20⍴1
                                                  $endgroup$
                                                  – Adám
                                                  yesterday












                                                  $begingroup$
                                                  14 bytes by using the REPL (add the -s flag).
                                                  $endgroup$
                                                  – Erik the Outgolfer
                                                  23 hours ago






                                                  $begingroup$
                                                  14 bytes by using the REPL (add the -s flag).
                                                  $endgroup$
                                                  – Erik the Outgolfer
                                                  23 hours ago














                                                  $begingroup$
                                                  If you use the flag, language becomes -s btw (unless -s is repl flag?)
                                                  $endgroup$
                                                  – ASCII-only
                                                  18 hours ago






                                                  $begingroup$
                                                  If you use the flag, language becomes -s btw (unless -s is repl flag?)
                                                  $endgroup$
                                                  – ASCII-only
                                                  18 hours ago













                                                  3












                                                  $begingroup$


                                                  Perl 6, 34 32 bytes



                                                  -2 bytes thanks to Jo King





                                                  {(@,{[+] 1,|.[^19]}...*)[$_+1]}


                                                  Try it online!



                                                  Explanation



                                                  {                              }  # Anonymous block
                                                  , ...* # Construct infinite sequence of sequences
                                                  @ # Start with empty array
                                                  { } # Compute next element as
                                                  [+] # cumulative sum of
                                                  1, # one followed by
                                                  |.[^19] # first 19 elements of previous sequence
                                                  ( )[$_+1] # Take (n+1)th element





                                                  share|improve this answer











                                                  $endgroup$













                                                  • $begingroup$
                                                    29 bytes (the $^a instead of $_ is necessary)
                                                    $endgroup$
                                                    – Jo King
                                                    20 hours ago








                                                  • 1




                                                    $begingroup$
                                                    @JoKing Nice, but this assumes that $_ is undefined when calling the function. I prefer solutions that don't depend on the state of global variables.
                                                    $endgroup$
                                                    – nwellnhof
                                                    9 hours ago
















                                                  3












                                                  $begingroup$


                                                  Perl 6, 34 32 bytes



                                                  -2 bytes thanks to Jo King





                                                  {(@,{[+] 1,|.[^19]}...*)[$_+1]}


                                                  Try it online!



                                                  Explanation



                                                  {                              }  # Anonymous block
                                                  , ...* # Construct infinite sequence of sequences
                                                  @ # Start with empty array
                                                  { } # Compute next element as
                                                  [+] # cumulative sum of
                                                  1, # one followed by
                                                  |.[^19] # first 19 elements of previous sequence
                                                  ( )[$_+1] # Take (n+1)th element





                                                  share|improve this answer











                                                  $endgroup$













                                                  • $begingroup$
                                                    29 bytes (the $^a instead of $_ is necessary)
                                                    $endgroup$
                                                    – Jo King
                                                    20 hours ago








                                                  • 1




                                                    $begingroup$
                                                    @JoKing Nice, but this assumes that $_ is undefined when calling the function. I prefer solutions that don't depend on the state of global variables.
                                                    $endgroup$
                                                    – nwellnhof
                                                    9 hours ago














                                                  3












                                                  3








                                                  3





                                                  $begingroup$


                                                  Perl 6, 34 32 bytes



                                                  -2 bytes thanks to Jo King





                                                  {(@,{[+] 1,|.[^19]}...*)[$_+1]}


                                                  Try it online!



                                                  Explanation



                                                  {                              }  # Anonymous block
                                                  , ...* # Construct infinite sequence of sequences
                                                  @ # Start with empty array
                                                  { } # Compute next element as
                                                  [+] # cumulative sum of
                                                  1, # one followed by
                                                  |.[^19] # first 19 elements of previous sequence
                                                  ( )[$_+1] # Take (n+1)th element





                                                  share|improve this answer











                                                  $endgroup$




                                                  Perl 6, 34 32 bytes



                                                  -2 bytes thanks to Jo King





                                                  {(@,{[+] 1,|.[^19]}...*)[$_+1]}


                                                  Try it online!



                                                  Explanation



                                                  {                              }  # Anonymous block
                                                  , ...* # Construct infinite sequence of sequences
                                                  @ # Start with empty array
                                                  { } # Compute next element as
                                                  [+] # cumulative sum of
                                                  1, # one followed by
                                                  |.[^19] # first 19 elements of previous sequence
                                                  ( )[$_+1] # Take (n+1)th element






                                                  share|improve this answer














                                                  share|improve this answer



                                                  share|improve this answer








                                                  edited 20 hours ago

























                                                  answered 22 hours ago









                                                  nwellnhofnwellnhof

                                                  7,21511128




                                                  7,21511128












                                                  • $begingroup$
                                                    29 bytes (the $^a instead of $_ is necessary)
                                                    $endgroup$
                                                    – Jo King
                                                    20 hours ago








                                                  • 1




                                                    $begingroup$
                                                    @JoKing Nice, but this assumes that $_ is undefined when calling the function. I prefer solutions that don't depend on the state of global variables.
                                                    $endgroup$
                                                    – nwellnhof
                                                    9 hours ago


















                                                  • $begingroup$
                                                    29 bytes (the $^a instead of $_ is necessary)
                                                    $endgroup$
                                                    – Jo King
                                                    20 hours ago








                                                  • 1




                                                    $begingroup$
                                                    @JoKing Nice, but this assumes that $_ is undefined when calling the function. I prefer solutions that don't depend on the state of global variables.
                                                    $endgroup$
                                                    – nwellnhof
                                                    9 hours ago
















                                                  $begingroup$
                                                  29 bytes (the $^a instead of $_ is necessary)
                                                  $endgroup$
                                                  – Jo King
                                                  20 hours ago






                                                  $begingroup$
                                                  29 bytes (the $^a instead of $_ is necessary)
                                                  $endgroup$
                                                  – Jo King
                                                  20 hours ago






                                                  1




                                                  1




                                                  $begingroup$
                                                  @JoKing Nice, but this assumes that $_ is undefined when calling the function. I prefer solutions that don't depend on the state of global variables.
                                                  $endgroup$
                                                  – nwellnhof
                                                  9 hours ago




                                                  $begingroup$
                                                  @JoKing Nice, but this assumes that $_ is undefined when calling the function. I prefer solutions that don't depend on the state of global variables.
                                                  $endgroup$
                                                  – nwellnhof
                                                  9 hours ago











                                                  2












                                                  $begingroup$


                                                  Python 3.8 (pre-release), 62 bytes





                                                  f=lambda n:[t:=1]+[t:=t+n for n in(n and f(n-1)[:-1]or[0]*19)]


                                                  Try it online!





                                                  Explanation



                                                  f=lambda n:     # funtion takes a single argument
                                                  [t:=1] # This evaluates to [1] and assigns 1 to t
                                                  # assignment expressions are a new feature of Python 3.8
                                                  + # concatenated to
                                                  [ .... ] # list comprehension

                                                  # The list comprehesion works together with the
                                                  # assignment expression as a scan function:
                                                  [t := t+n for n in it]
                                                  # This calculates all partial sums of it
                                                  # (plus the initial value of t, which is 1 here)

                                                  # The list comprehension iterates
                                                  # over the first 19 entries of f(n-1)
                                                  # or over a list of zeros for n=0
                                                  for n in (n and f(n-1)[:-1] or [0]*19)





                                                  share|improve this answer











                                                  $endgroup$


















                                                    2












                                                    $begingroup$


                                                    Python 3.8 (pre-release), 62 bytes





                                                    f=lambda n:[t:=1]+[t:=t+n for n in(n and f(n-1)[:-1]or[0]*19)]


                                                    Try it online!





                                                    Explanation



                                                    f=lambda n:     # funtion takes a single argument
                                                    [t:=1] # This evaluates to [1] and assigns 1 to t
                                                    # assignment expressions are a new feature of Python 3.8
                                                    + # concatenated to
                                                    [ .... ] # list comprehension

                                                    # The list comprehesion works together with the
                                                    # assignment expression as a scan function:
                                                    [t := t+n for n in it]
                                                    # This calculates all partial sums of it
                                                    # (plus the initial value of t, which is 1 here)

                                                    # The list comprehension iterates
                                                    # over the first 19 entries of f(n-1)
                                                    # or over a list of zeros for n=0
                                                    for n in (n and f(n-1)[:-1] or [0]*19)





                                                    share|improve this answer











                                                    $endgroup$
















                                                      2












                                                      2








                                                      2





                                                      $begingroup$


                                                      Python 3.8 (pre-release), 62 bytes





                                                      f=lambda n:[t:=1]+[t:=t+n for n in(n and f(n-1)[:-1]or[0]*19)]


                                                      Try it online!





                                                      Explanation



                                                      f=lambda n:     # funtion takes a single argument
                                                      [t:=1] # This evaluates to [1] and assigns 1 to t
                                                      # assignment expressions are a new feature of Python 3.8
                                                      + # concatenated to
                                                      [ .... ] # list comprehension

                                                      # The list comprehesion works together with the
                                                      # assignment expression as a scan function:
                                                      [t := t+n for n in it]
                                                      # This calculates all partial sums of it
                                                      # (plus the initial value of t, which is 1 here)

                                                      # The list comprehension iterates
                                                      # over the first 19 entries of f(n-1)
                                                      # or over a list of zeros for n=0
                                                      for n in (n and f(n-1)[:-1] or [0]*19)





                                                      share|improve this answer











                                                      $endgroup$




                                                      Python 3.8 (pre-release), 62 bytes





                                                      f=lambda n:[t:=1]+[t:=t+n for n in(n and f(n-1)[:-1]or[0]*19)]


                                                      Try it online!





                                                      Explanation



                                                      f=lambda n:     # funtion takes a single argument
                                                      [t:=1] # This evaluates to [1] and assigns 1 to t
                                                      # assignment expressions are a new feature of Python 3.8
                                                      + # concatenated to
                                                      [ .... ] # list comprehension

                                                      # The list comprehesion works together with the
                                                      # assignment expression as a scan function:
                                                      [t := t+n for n in it]
                                                      # This calculates all partial sums of it
                                                      # (plus the initial value of t, which is 1 here)

                                                      # The list comprehension iterates
                                                      # over the first 19 entries of f(n-1)
                                                      # or over a list of zeros for n=0
                                                      for n in (n and f(n-1)[:-1] or [0]*19)






                                                      share|improve this answer














                                                      share|improve this answer



                                                      share|improve this answer








                                                      edited 20 hours ago

























                                                      answered 21 hours ago









                                                      ovsovs

                                                      19.2k21160




                                                      19.2k21160























                                                          2












                                                          $begingroup$


                                                          Brain-Flak, 84 82 bytes



                                                          <>((()()()()()){}){({}[((()))])}{}<>{({}[(())]<<>{({}<>({}))<>}<>{}{({}<>)<>}>)}<>


                                                          Try it online!



                                                          Annotated



                                                          <>               Switch to the off stack
                                                          ((()()()()()){}) Push 10
                                                          {({}[((()))])}{} Make twice that many 1s
                                                          <> Switch back
                                                          { While ...
                                                          ({}[(())]< Subtract one from the input and push 1
                                                          <> Switch
                                                          { For every x on the stack
                                                          ({}<>({}))<> Remove x and add it to a copy of the other TOS
                                                          } End loop
                                                          <>{} Remove 1 element to keep it 20
                                                          {({}<>)<>} Copy everything back to the other stack
                                                          >)}<> End scopes and loops


                                                          Try it online!






                                                          share|improve this answer









                                                          $endgroup$


















                                                            2












                                                            $begingroup$


                                                            Brain-Flak, 84 82 bytes



                                                            <>((()()()()()){}){({}[((()))])}{}<>{({}[(())]<<>{({}<>({}))<>}<>{}{({}<>)<>}>)}<>


                                                            Try it online!



                                                            Annotated



                                                            <>               Switch to the off stack
                                                            ((()()()()()){}) Push 10
                                                            {({}[((()))])}{} Make twice that many 1s
                                                            <> Switch back
                                                            { While ...
                                                            ({}[(())]< Subtract one from the input and push 1
                                                            <> Switch
                                                            { For every x on the stack
                                                            ({}<>({}))<> Remove x and add it to a copy of the other TOS
                                                            } End loop
                                                            <>{} Remove 1 element to keep it 20
                                                            {({}<>)<>} Copy everything back to the other stack
                                                            >)}<> End scopes and loops


                                                            Try it online!






                                                            share|improve this answer









                                                            $endgroup$
















                                                              2












                                                              2








                                                              2





                                                              $begingroup$


                                                              Brain-Flak, 84 82 bytes



                                                              <>((()()()()()){}){({}[((()))])}{}<>{({}[(())]<<>{({}<>({}))<>}<>{}{({}<>)<>}>)}<>


                                                              Try it online!



                                                              Annotated



                                                              <>               Switch to the off stack
                                                              ((()()()()()){}) Push 10
                                                              {({}[((()))])}{} Make twice that many 1s
                                                              <> Switch back
                                                              { While ...
                                                              ({}[(())]< Subtract one from the input and push 1
                                                              <> Switch
                                                              { For every x on the stack
                                                              ({}<>({}))<> Remove x and add it to a copy of the other TOS
                                                              } End loop
                                                              <>{} Remove 1 element to keep it 20
                                                              {({}<>)<>} Copy everything back to the other stack
                                                              >)}<> End scopes and loops


                                                              Try it online!






                                                              share|improve this answer









                                                              $endgroup$




                                                              Brain-Flak, 84 82 bytes



                                                              <>((()()()()()){}){({}[((()))])}{}<>{({}[(())]<<>{({}<>({}))<>}<>{}{({}<>)<>}>)}<>


                                                              Try it online!



                                                              Annotated



                                                              <>               Switch to the off stack
                                                              ((()()()()()){}) Push 10
                                                              {({}[((()))])}{} Make twice that many 1s
                                                              <> Switch back
                                                              { While ...
                                                              ({}[(())]< Subtract one from the input and push 1
                                                              <> Switch
                                                              { For every x on the stack
                                                              ({}<>({}))<> Remove x and add it to a copy of the other TOS
                                                              } End loop
                                                              <>{} Remove 1 element to keep it 20
                                                              {({}<>)<>} Copy everything back to the other stack
                                                              >)}<> End scopes and loops


                                                              Try it online!







                                                              share|improve this answer












                                                              share|improve this answer



                                                              share|improve this answer










                                                              answered 3 hours ago









                                                              Sriotchilism O'ZaicSriotchilism O'Zaic

                                                              35.3k10159369




                                                              35.3k10159369























                                                                  1












                                                                  $begingroup$

                                                                  JavaScript (ES6),  68  67 bytes





                                                                  f=(n,a=[...f+f])=>n--?f(n,[s=1,...a.map(x=>s-=~--x)]):a.slice(0,20)


                                                                  Try it online!





                                                                  JavaScript (ES6), 63 bytes



                                                                  NB: this version works for $nle20$.





                                                                  f=(n,a=[...Array(20-n)])=>n--?f(n,[s=1,...a.map(x=>s+=x||1)]):a


                                                                  Try it online!






                                                                  share|improve this answer











                                                                  $endgroup$


















                                                                    1












                                                                    $begingroup$

                                                                    JavaScript (ES6),  68  67 bytes





                                                                    f=(n,a=[...f+f])=>n--?f(n,[s=1,...a.map(x=>s-=~--x)]):a.slice(0,20)


                                                                    Try it online!





                                                                    JavaScript (ES6), 63 bytes



                                                                    NB: this version works for $nle20$.





                                                                    f=(n,a=[...Array(20-n)])=>n--?f(n,[s=1,...a.map(x=>s+=x||1)]):a


                                                                    Try it online!






                                                                    share|improve this answer











                                                                    $endgroup$
















                                                                      1












                                                                      1








                                                                      1





                                                                      $begingroup$

                                                                      JavaScript (ES6),  68  67 bytes





                                                                      f=(n,a=[...f+f])=>n--?f(n,[s=1,...a.map(x=>s-=~--x)]):a.slice(0,20)


                                                                      Try it online!





                                                                      JavaScript (ES6), 63 bytes



                                                                      NB: this version works for $nle20$.





                                                                      f=(n,a=[...Array(20-n)])=>n--?f(n,[s=1,...a.map(x=>s+=x||1)]):a


                                                                      Try it online!






                                                                      share|improve this answer











                                                                      $endgroup$



                                                                      JavaScript (ES6),  68  67 bytes





                                                                      f=(n,a=[...f+f])=>n--?f(n,[s=1,...a.map(x=>s-=~--x)]):a.slice(0,20)


                                                                      Try it online!





                                                                      JavaScript (ES6), 63 bytes



                                                                      NB: this version works for $nle20$.





                                                                      f=(n,a=[...Array(20-n)])=>n--?f(n,[s=1,...a.map(x=>s+=x||1)]):a


                                                                      Try it online!







                                                                      share|improve this answer














                                                                      share|improve this answer



                                                                      share|improve this answer








                                                                      edited 22 hours ago

























                                                                      answered yesterday









                                                                      ArnauldArnauld

                                                                      77.7k694325




                                                                      77.7k694325























                                                                          1












                                                                          $begingroup$


                                                                          J, 24 bytes



                                                                          <:(1+/@,])^:[(1+i.20)"_


                                                                          Try it online!



                                                                          NOTE: Turns out this is a translation of dzaima's APL answer, though I actually didn't notice it before writing this.



                                                                          explanation



                                                                          <: (1 +/@, ])^:[ (1+i.20)"_
                                                                          <: NB. input minus 1 (left input)
                                                                          (1+i.20)"_ NB. 1..20 (right input)
                                                                          ( )^:[ NB. apply verb in parens
                                                                          NB. "left input" times
                                                                          (1 , ]) NB. prepend 1 to right input
                                                                          ( +/@ ) NB. and take scan sum





                                                                          share|improve this answer











                                                                          $endgroup$


















                                                                            1












                                                                            $begingroup$


                                                                            J, 24 bytes



                                                                            <:(1+/@,])^:[(1+i.20)"_


                                                                            Try it online!



                                                                            NOTE: Turns out this is a translation of dzaima's APL answer, though I actually didn't notice it before writing this.



                                                                            explanation



                                                                            <: (1 +/@, ])^:[ (1+i.20)"_
                                                                            <: NB. input minus 1 (left input)
                                                                            (1+i.20)"_ NB. 1..20 (right input)
                                                                            ( )^:[ NB. apply verb in parens
                                                                            NB. "left input" times
                                                                            (1 , ]) NB. prepend 1 to right input
                                                                            ( +/@ ) NB. and take scan sum





                                                                            share|improve this answer











                                                                            $endgroup$
















                                                                              1












                                                                              1








                                                                              1





                                                                              $begingroup$


                                                                              J, 24 bytes



                                                                              <:(1+/@,])^:[(1+i.20)"_


                                                                              Try it online!



                                                                              NOTE: Turns out this is a translation of dzaima's APL answer, though I actually didn't notice it before writing this.



                                                                              explanation



                                                                              <: (1 +/@, ])^:[ (1+i.20)"_
                                                                              <: NB. input minus 1 (left input)
                                                                              (1+i.20)"_ NB. 1..20 (right input)
                                                                              ( )^:[ NB. apply verb in parens
                                                                              NB. "left input" times
                                                                              (1 , ]) NB. prepend 1 to right input
                                                                              ( +/@ ) NB. and take scan sum





                                                                              share|improve this answer











                                                                              $endgroup$




                                                                              J, 24 bytes



                                                                              <:(1+/@,])^:[(1+i.20)"_


                                                                              Try it online!



                                                                              NOTE: Turns out this is a translation of dzaima's APL answer, though I actually didn't notice it before writing this.



                                                                              explanation



                                                                              <: (1 +/@, ])^:[ (1+i.20)"_
                                                                              <: NB. input minus 1 (left input)
                                                                              (1+i.20)"_ NB. 1..20 (right input)
                                                                              ( )^:[ NB. apply verb in parens
                                                                              NB. "left input" times
                                                                              (1 , ]) NB. prepend 1 to right input
                                                                              ( +/@ ) NB. and take scan sum






                                                                              share|improve this answer














                                                                              share|improve this answer



                                                                              share|improve this answer








                                                                              edited 20 hours ago

























                                                                              answered 20 hours ago









                                                                              JonahJonah

                                                                              2,371916




                                                                              2,371916























                                                                                  1












                                                                                  $begingroup$


                                                                                  Wolfram Language (Mathematica), 42 bytes



                                                                                  Nest[FoldList[Plus,1,#]&,Range[21-#],#-1]&


                                                                                  Try it online!






                                                                                  share|improve this answer









                                                                                  $endgroup$


















                                                                                    1












                                                                                    $begingroup$


                                                                                    Wolfram Language (Mathematica), 42 bytes



                                                                                    Nest[FoldList[Plus,1,#]&,Range[21-#],#-1]&


                                                                                    Try it online!






                                                                                    share|improve this answer









                                                                                    $endgroup$
















                                                                                      1












                                                                                      1








                                                                                      1





                                                                                      $begingroup$


                                                                                      Wolfram Language (Mathematica), 42 bytes



                                                                                      Nest[FoldList[Plus,1,#]&,Range[21-#],#-1]&


                                                                                      Try it online!






                                                                                      share|improve this answer









                                                                                      $endgroup$




                                                                                      Wolfram Language (Mathematica), 42 bytes



                                                                                      Nest[FoldList[Plus,1,#]&,Range[21-#],#-1]&


                                                                                      Try it online!







                                                                                      share|improve this answer












                                                                                      share|improve this answer



                                                                                      share|improve this answer










                                                                                      answered 19 hours ago









                                                                                      shrapshrap

                                                                                      211




                                                                                      211























                                                                                          1












                                                                                          $begingroup$

                                                                                          Ruby, 49 bytes



                                                                                          f=->n{n<1?[1]*20:[o=1]+f[n-1][0,19].map{|x|o+=x}}


                                                                                          Recursive definition: Tier 0 is 1,1,1,1... and each subsequent tier is 1 followed by a sequence whose first differences are the previous tier. Annoyingly this would give me 21 values if I didn't explicitly slice out the first 20; seems like there should be a way to shorten this by avoiding that.






                                                                                          share|improve this answer











                                                                                          $endgroup$













                                                                                          • $begingroup$
                                                                                            tio.run/#ruby pls
                                                                                            $endgroup$
                                                                                            – ASCII-only
                                                                                            19 hours ago










                                                                                          • $begingroup$
                                                                                            also 49
                                                                                            $endgroup$
                                                                                            – ASCII-only
                                                                                            19 hours ago










                                                                                          • $begingroup$
                                                                                            46
                                                                                            $endgroup$
                                                                                            – ASCII-only
                                                                                            19 hours ago


















                                                                                          1












                                                                                          $begingroup$

                                                                                          Ruby, 49 bytes



                                                                                          f=->n{n<1?[1]*20:[o=1]+f[n-1][0,19].map{|x|o+=x}}


                                                                                          Recursive definition: Tier 0 is 1,1,1,1... and each subsequent tier is 1 followed by a sequence whose first differences are the previous tier. Annoyingly this would give me 21 values if I didn't explicitly slice out the first 20; seems like there should be a way to shorten this by avoiding that.






                                                                                          share|improve this answer











                                                                                          $endgroup$













                                                                                          • $begingroup$
                                                                                            tio.run/#ruby pls
                                                                                            $endgroup$
                                                                                            – ASCII-only
                                                                                            19 hours ago










                                                                                          • $begingroup$
                                                                                            also 49
                                                                                            $endgroup$
                                                                                            – ASCII-only
                                                                                            19 hours ago










                                                                                          • $begingroup$
                                                                                            46
                                                                                            $endgroup$
                                                                                            – ASCII-only
                                                                                            19 hours ago
















                                                                                          1












                                                                                          1








                                                                                          1





                                                                                          $begingroup$

                                                                                          Ruby, 49 bytes



                                                                                          f=->n{n<1?[1]*20:[o=1]+f[n-1][0,19].map{|x|o+=x}}


                                                                                          Recursive definition: Tier 0 is 1,1,1,1... and each subsequent tier is 1 followed by a sequence whose first differences are the previous tier. Annoyingly this would give me 21 values if I didn't explicitly slice out the first 20; seems like there should be a way to shorten this by avoiding that.






                                                                                          share|improve this answer











                                                                                          $endgroup$



                                                                                          Ruby, 49 bytes



                                                                                          f=->n{n<1?[1]*20:[o=1]+f[n-1][0,19].map{|x|o+=x}}


                                                                                          Recursive definition: Tier 0 is 1,1,1,1... and each subsequent tier is 1 followed by a sequence whose first differences are the previous tier. Annoyingly this would give me 21 values if I didn't explicitly slice out the first 20; seems like there should be a way to shorten this by avoiding that.







                                                                                          share|improve this answer














                                                                                          share|improve this answer



                                                                                          share|improve this answer








                                                                                          edited 19 hours ago

























                                                                                          answered 23 hours ago









                                                                                          histocrathistocrat

                                                                                          19k43172




                                                                                          19k43172












                                                                                          • $begingroup$
                                                                                            tio.run/#ruby pls
                                                                                            $endgroup$
                                                                                            – ASCII-only
                                                                                            19 hours ago










                                                                                          • $begingroup$
                                                                                            also 49
                                                                                            $endgroup$
                                                                                            – ASCII-only
                                                                                            19 hours ago










                                                                                          • $begingroup$
                                                                                            46
                                                                                            $endgroup$
                                                                                            – ASCII-only
                                                                                            19 hours ago




















                                                                                          • $begingroup$
                                                                                            tio.run/#ruby pls
                                                                                            $endgroup$
                                                                                            – ASCII-only
                                                                                            19 hours ago










                                                                                          • $begingroup$
                                                                                            also 49
                                                                                            $endgroup$
                                                                                            – ASCII-only
                                                                                            19 hours ago










                                                                                          • $begingroup$
                                                                                            46
                                                                                            $endgroup$
                                                                                            – ASCII-only
                                                                                            19 hours ago


















                                                                                          $begingroup$
                                                                                          tio.run/#ruby pls
                                                                                          $endgroup$
                                                                                          – ASCII-only
                                                                                          19 hours ago




                                                                                          $begingroup$
                                                                                          tio.run/#ruby pls
                                                                                          $endgroup$
                                                                                          – ASCII-only
                                                                                          19 hours ago












                                                                                          $begingroup$
                                                                                          also 49
                                                                                          $endgroup$
                                                                                          – ASCII-only
                                                                                          19 hours ago




                                                                                          $begingroup$
                                                                                          also 49
                                                                                          $endgroup$
                                                                                          – ASCII-only
                                                                                          19 hours ago












                                                                                          $begingroup$
                                                                                          46
                                                                                          $endgroup$
                                                                                          – ASCII-only
                                                                                          19 hours ago






                                                                                          $begingroup$
                                                                                          46
                                                                                          $endgroup$
                                                                                          – ASCII-only
                                                                                          19 hours ago













                                                                                          1












                                                                                          $begingroup$


                                                                                          Retina, 59 bytes



                                                                                          .+
                                                                                          19*$(_,


                                                                                          Replace the input with 19 1s (in unary). (The 20th value is 0 because it always gets deleted by the first pass through the loop.)



                                                                                          "$+"{`
                                                                                          )`


                                                                                          Repeat the loop the original input number of times.



                                                                                          (.+),_*
                                                                                          _,$1


                                                                                          Remove the last element and prefix a 1.



                                                                                          _+(?<=((_)|,)+)
                                                                                          $#2*


                                                                                          Calculate the cumulative sum.



                                                                                          _+
                                                                                          $.&


                                                                                          Convert to decimal.



                                                                                          Try it online!






                                                                                          share|improve this answer









                                                                                          $endgroup$


















                                                                                            1












                                                                                            $begingroup$


                                                                                            Retina, 59 bytes



                                                                                            .+
                                                                                            19*$(_,


                                                                                            Replace the input with 19 1s (in unary). (The 20th value is 0 because it always gets deleted by the first pass through the loop.)



                                                                                            "$+"{`
                                                                                            )`


                                                                                            Repeat the loop the original input number of times.



                                                                                            (.+),_*
                                                                                            _,$1


                                                                                            Remove the last element and prefix a 1.



                                                                                            _+(?<=((_)|,)+)
                                                                                            $#2*


                                                                                            Calculate the cumulative sum.



                                                                                            _+
                                                                                            $.&


                                                                                            Convert to decimal.



                                                                                            Try it online!






                                                                                            share|improve this answer









                                                                                            $endgroup$
















                                                                                              1












                                                                                              1








                                                                                              1





                                                                                              $begingroup$


                                                                                              Retina, 59 bytes



                                                                                              .+
                                                                                              19*$(_,


                                                                                              Replace the input with 19 1s (in unary). (The 20th value is 0 because it always gets deleted by the first pass through the loop.)



                                                                                              "$+"{`
                                                                                              )`


                                                                                              Repeat the loop the original input number of times.



                                                                                              (.+),_*
                                                                                              _,$1


                                                                                              Remove the last element and prefix a 1.



                                                                                              _+(?<=((_)|,)+)
                                                                                              $#2*


                                                                                              Calculate the cumulative sum.



                                                                                              _+
                                                                                              $.&


                                                                                              Convert to decimal.



                                                                                              Try it online!






                                                                                              share|improve this answer









                                                                                              $endgroup$




                                                                                              Retina, 59 bytes



                                                                                              .+
                                                                                              19*$(_,


                                                                                              Replace the input with 19 1s (in unary). (The 20th value is 0 because it always gets deleted by the first pass through the loop.)



                                                                                              "$+"{`
                                                                                              )`


                                                                                              Repeat the loop the original input number of times.



                                                                                              (.+),_*
                                                                                              _,$1


                                                                                              Remove the last element and prefix a 1.



                                                                                              _+(?<=((_)|,)+)
                                                                                              $#2*


                                                                                              Calculate the cumulative sum.



                                                                                              _+
                                                                                              $.&


                                                                                              Convert to decimal.



                                                                                              Try it online!







                                                                                              share|improve this answer












                                                                                              share|improve this answer



                                                                                              share|improve this answer










                                                                                              answered 18 hours ago









                                                                                              NeilNeil

                                                                                              81.3k745178




                                                                                              81.3k745178























                                                                                                  1












                                                                                                  $begingroup$


                                                                                                  JavaScript (Node.js), 58 bytes





                                                                                                  t=>Array(20).fill(t).map(g=(t,i)=>i--*t?g(t,i)+g(t-1,i):1)


                                                                                                  Try it online!



                                                                                                  It is trivial to write down following recursive formula based on the description in question
                                                                                                  $$ g(t,i)=begin{cases}
                                                                                                  g(t,i-1)+g(t-1,i-1) & text{if} quad icdot t>0 \
                                                                                                  1 & text{if} quad icdot t=0 \
                                                                                                  end{cases} $$

                                                                                                  And you just need to generate an Array of 20 elements with $[g(t,0)dots g(t,19)]$






                                                                                                  share|improve this answer











                                                                                                  $endgroup$


















                                                                                                    1












                                                                                                    $begingroup$


                                                                                                    JavaScript (Node.js), 58 bytes





                                                                                                    t=>Array(20).fill(t).map(g=(t,i)=>i--*t?g(t,i)+g(t-1,i):1)


                                                                                                    Try it online!



                                                                                                    It is trivial to write down following recursive formula based on the description in question
                                                                                                    $$ g(t,i)=begin{cases}
                                                                                                    g(t,i-1)+g(t-1,i-1) & text{if} quad icdot t>0 \
                                                                                                    1 & text{if} quad icdot t=0 \
                                                                                                    end{cases} $$

                                                                                                    And you just need to generate an Array of 20 elements with $[g(t,0)dots g(t,19)]$






                                                                                                    share|improve this answer











                                                                                                    $endgroup$
















                                                                                                      1












                                                                                                      1








                                                                                                      1





                                                                                                      $begingroup$


                                                                                                      JavaScript (Node.js), 58 bytes





                                                                                                      t=>Array(20).fill(t).map(g=(t,i)=>i--*t?g(t,i)+g(t-1,i):1)


                                                                                                      Try it online!



                                                                                                      It is trivial to write down following recursive formula based on the description in question
                                                                                                      $$ g(t,i)=begin{cases}
                                                                                                      g(t,i-1)+g(t-1,i-1) & text{if} quad icdot t>0 \
                                                                                                      1 & text{if} quad icdot t=0 \
                                                                                                      end{cases} $$

                                                                                                      And you just need to generate an Array of 20 elements with $[g(t,0)dots g(t,19)]$






                                                                                                      share|improve this answer











                                                                                                      $endgroup$




                                                                                                      JavaScript (Node.js), 58 bytes





                                                                                                      t=>Array(20).fill(t).map(g=(t,i)=>i--*t?g(t,i)+g(t-1,i):1)


                                                                                                      Try it online!



                                                                                                      It is trivial to write down following recursive formula based on the description in question
                                                                                                      $$ g(t,i)=begin{cases}
                                                                                                      g(t,i-1)+g(t-1,i-1) & text{if} quad icdot t>0 \
                                                                                                      1 & text{if} quad icdot t=0 \
                                                                                                      end{cases} $$

                                                                                                      And you just need to generate an Array of 20 elements with $[g(t,0)dots g(t,19)]$







                                                                                                      share|improve this answer














                                                                                                      share|improve this answer



                                                                                                      share|improve this answer








                                                                                                      edited 12 hours ago

























                                                                                                      answered 16 hours ago









                                                                                                      tshtsh

                                                                                                      9,31511652




                                                                                                      9,31511652























                                                                                                          1












                                                                                                          $begingroup$


                                                                                                          05AB1E, 11 9 bytes



                                                                                                          20LIF.¥>¨


                                                                                                          0-indexed



                                                                                                          Try it online or verify all test cases.



                                                                                                          Explanation:





                                                                                                          20L        # Create a list in the range [1,20]
                                                                                                          IF # Loop the input amount of times:
                                                                                                          .¥ # Get the cumulative sum of the current list with 0 prepended automatically
                                                                                                          > # Increase each value in this list by 1
                                                                                                          ¨ # Remove the trailing 21th item from the list
                                                                                                          # (after the loop, output the result-list implicitly)





                                                                                                          share|improve this answer











                                                                                                          $endgroup$









                                                                                                          • 1




                                                                                                            $begingroup$
                                                                                                            Nice use of !
                                                                                                            $endgroup$
                                                                                                            – Emigna
                                                                                                            10 hours ago
















                                                                                                          1












                                                                                                          $begingroup$


                                                                                                          05AB1E, 11 9 bytes



                                                                                                          20LIF.¥>¨


                                                                                                          0-indexed



                                                                                                          Try it online or verify all test cases.



                                                                                                          Explanation:





                                                                                                          20L        # Create a list in the range [1,20]
                                                                                                          IF # Loop the input amount of times:
                                                                                                          .¥ # Get the cumulative sum of the current list with 0 prepended automatically
                                                                                                          > # Increase each value in this list by 1
                                                                                                          ¨ # Remove the trailing 21th item from the list
                                                                                                          # (after the loop, output the result-list implicitly)





                                                                                                          share|improve this answer











                                                                                                          $endgroup$









                                                                                                          • 1




                                                                                                            $begingroup$
                                                                                                            Nice use of !
                                                                                                            $endgroup$
                                                                                                            – Emigna
                                                                                                            10 hours ago














                                                                                                          1












                                                                                                          1








                                                                                                          1





                                                                                                          $begingroup$


                                                                                                          05AB1E, 11 9 bytes



                                                                                                          20LIF.¥>¨


                                                                                                          0-indexed



                                                                                                          Try it online or verify all test cases.



                                                                                                          Explanation:





                                                                                                          20L        # Create a list in the range [1,20]
                                                                                                          IF # Loop the input amount of times:
                                                                                                          .¥ # Get the cumulative sum of the current list with 0 prepended automatically
                                                                                                          > # Increase each value in this list by 1
                                                                                                          ¨ # Remove the trailing 21th item from the list
                                                                                                          # (after the loop, output the result-list implicitly)





                                                                                                          share|improve this answer











                                                                                                          $endgroup$




                                                                                                          05AB1E, 11 9 bytes



                                                                                                          20LIF.¥>¨


                                                                                                          0-indexed



                                                                                                          Try it online or verify all test cases.



                                                                                                          Explanation:





                                                                                                          20L        # Create a list in the range [1,20]
                                                                                                          IF # Loop the input amount of times:
                                                                                                          .¥ # Get the cumulative sum of the current list with 0 prepended automatically
                                                                                                          > # Increase each value in this list by 1
                                                                                                          ¨ # Remove the trailing 21th item from the list
                                                                                                          # (after the loop, output the result-list implicitly)






                                                                                                          share|improve this answer














                                                                                                          share|improve this answer



                                                                                                          share|improve this answer








                                                                                                          edited 11 hours ago

























                                                                                                          answered 11 hours ago









                                                                                                          Kevin CruijssenKevin Cruijssen

                                                                                                          39.5k560203




                                                                                                          39.5k560203








                                                                                                          • 1




                                                                                                            $begingroup$
                                                                                                            Nice use of !
                                                                                                            $endgroup$
                                                                                                            – Emigna
                                                                                                            10 hours ago














                                                                                                          • 1




                                                                                                            $begingroup$
                                                                                                            Nice use of !
                                                                                                            $endgroup$
                                                                                                            – Emigna
                                                                                                            10 hours ago








                                                                                                          1




                                                                                                          1




                                                                                                          $begingroup$
                                                                                                          Nice use of !
                                                                                                          $endgroup$
                                                                                                          – Emigna
                                                                                                          10 hours ago




                                                                                                          $begingroup$
                                                                                                          Nice use of !
                                                                                                          $endgroup$
                                                                                                          – Emigna
                                                                                                          10 hours ago











                                                                                                          0












                                                                                                          $begingroup$

                                                                                                          Ruby, 74 bytes



                                                                                                          a=->b{c=[1];d=0;b==1?c=(1..20).to_a: 19.times{c<<c[d]+(a[b-1])[d];d+=1};c}



                                                                                                          Ungolfed version:



                                                                                                          def seq num
                                                                                                          ary = [1]
                                                                                                          index = 0
                                                                                                          if num == 1
                                                                                                          ary = (1..20).to_a
                                                                                                          else
                                                                                                          19.times{ary << ary[index]+seq(num-1)[index]; index+=1}
                                                                                                          end
                                                                                                          return ary
                                                                                                          end


                                                                                                          Quite resource-intensive--the online version can't calculate the 13th metasequence.



                                                                                                          Try it online






                                                                                                          share|improve this answer









                                                                                                          $endgroup$


















                                                                                                            0












                                                                                                            $begingroup$

                                                                                                            Ruby, 74 bytes



                                                                                                            a=->b{c=[1];d=0;b==1?c=(1..20).to_a: 19.times{c<<c[d]+(a[b-1])[d];d+=1};c}



                                                                                                            Ungolfed version:



                                                                                                            def seq num
                                                                                                            ary = [1]
                                                                                                            index = 0
                                                                                                            if num == 1
                                                                                                            ary = (1..20).to_a
                                                                                                            else
                                                                                                            19.times{ary << ary[index]+seq(num-1)[index]; index+=1}
                                                                                                            end
                                                                                                            return ary
                                                                                                            end


                                                                                                            Quite resource-intensive--the online version can't calculate the 13th metasequence.



                                                                                                            Try it online






                                                                                                            share|improve this answer









                                                                                                            $endgroup$
















                                                                                                              0












                                                                                                              0








                                                                                                              0





                                                                                                              $begingroup$

                                                                                                              Ruby, 74 bytes



                                                                                                              a=->b{c=[1];d=0;b==1?c=(1..20).to_a: 19.times{c<<c[d]+(a[b-1])[d];d+=1};c}



                                                                                                              Ungolfed version:



                                                                                                              def seq num
                                                                                                              ary = [1]
                                                                                                              index = 0
                                                                                                              if num == 1
                                                                                                              ary = (1..20).to_a
                                                                                                              else
                                                                                                              19.times{ary << ary[index]+seq(num-1)[index]; index+=1}
                                                                                                              end
                                                                                                              return ary
                                                                                                              end


                                                                                                              Quite resource-intensive--the online version can't calculate the 13th metasequence.



                                                                                                              Try it online






                                                                                                              share|improve this answer









                                                                                                              $endgroup$



                                                                                                              Ruby, 74 bytes



                                                                                                              a=->b{c=[1];d=0;b==1?c=(1..20).to_a: 19.times{c<<c[d]+(a[b-1])[d];d+=1};c}



                                                                                                              Ungolfed version:



                                                                                                              def seq num
                                                                                                              ary = [1]
                                                                                                              index = 0
                                                                                                              if num == 1
                                                                                                              ary = (1..20).to_a
                                                                                                              else
                                                                                                              19.times{ary << ary[index]+seq(num-1)[index]; index+=1}
                                                                                                              end
                                                                                                              return ary
                                                                                                              end


                                                                                                              Quite resource-intensive--the online version can't calculate the 13th metasequence.



                                                                                                              Try it online







                                                                                                              share|improve this answer












                                                                                                              share|improve this answer



                                                                                                              share|improve this answer










                                                                                                              answered yesterday









                                                                                                              CG One HandedCG One Handed

                                                                                                              615




                                                                                                              615























                                                                                                                  0












                                                                                                                  $begingroup$


                                                                                                                  Jelly, 10 bytes



                                                                                                                  20RṖ1;ÄƲ⁸¡


                                                                                                                  Try it online!



                                                                                                                  0-indexed.






                                                                                                                  share|improve this answer









                                                                                                                  $endgroup$


















                                                                                                                    0












                                                                                                                    $begingroup$


                                                                                                                    Jelly, 10 bytes



                                                                                                                    20RṖ1;ÄƲ⁸¡


                                                                                                                    Try it online!



                                                                                                                    0-indexed.






                                                                                                                    share|improve this answer









                                                                                                                    $endgroup$
















                                                                                                                      0












                                                                                                                      0








                                                                                                                      0





                                                                                                                      $begingroup$


                                                                                                                      Jelly, 10 bytes



                                                                                                                      20RṖ1;ÄƲ⁸¡


                                                                                                                      Try it online!



                                                                                                                      0-indexed.






                                                                                                                      share|improve this answer









                                                                                                                      $endgroup$




                                                                                                                      Jelly, 10 bytes



                                                                                                                      20RṖ1;ÄƲ⁸¡


                                                                                                                      Try it online!



                                                                                                                      0-indexed.







                                                                                                                      share|improve this answer












                                                                                                                      share|improve this answer



                                                                                                                      share|improve this answer










                                                                                                                      answered yesterday









                                                                                                                      Erik the OutgolferErik the Outgolfer

                                                                                                                      32.1k429103




                                                                                                                      32.1k429103























                                                                                                                          0












                                                                                                                          $begingroup$


                                                                                                                          R, 59 bytes





                                                                                                                          Reduce(function(x,y)diffinv(x,,,y),!!1:scan(),!!1:19)[1:20]


                                                                                                                          Try it online!



                                                                                                                          Repeated diffinv with xi=1, and subset out the first 20 terms.






                                                                                                                          share|improve this answer









                                                                                                                          $endgroup$


















                                                                                                                            0












                                                                                                                            $begingroup$


                                                                                                                            R, 59 bytes





                                                                                                                            Reduce(function(x,y)diffinv(x,,,y),!!1:scan(),!!1:19)[1:20]


                                                                                                                            Try it online!



                                                                                                                            Repeated diffinv with xi=1, and subset out the first 20 terms.






                                                                                                                            share|improve this answer









                                                                                                                            $endgroup$
















                                                                                                                              0












                                                                                                                              0








                                                                                                                              0





                                                                                                                              $begingroup$


                                                                                                                              R, 59 bytes





                                                                                                                              Reduce(function(x,y)diffinv(x,,,y),!!1:scan(),!!1:19)[1:20]


                                                                                                                              Try it online!



                                                                                                                              Repeated diffinv with xi=1, and subset out the first 20 terms.






                                                                                                                              share|improve this answer









                                                                                                                              $endgroup$




                                                                                                                              R, 59 bytes





                                                                                                                              Reduce(function(x,y)diffinv(x,,,y),!!1:scan(),!!1:19)[1:20]


                                                                                                                              Try it online!



                                                                                                                              Repeated diffinv with xi=1, and subset out the first 20 terms.







                                                                                                                              share|improve this answer












                                                                                                                              share|improve this answer



                                                                                                                              share|improve this answer










                                                                                                                              answered 20 hours ago









                                                                                                                              GiuseppeGiuseppe

                                                                                                                              16.6k31052




                                                                                                                              16.6k31052























                                                                                                                                  0












                                                                                                                                  $begingroup$


                                                                                                                                  C# (Visual C# Interactive Compiler), 120 bytes





                                                                                                                                  n=>{for(long i=-1,h=0,m=0;++i<20;Print(i<1?1:h))for(m=h=0;m<=n;)h+=f(i)/(f(m)*f(i-m++));long f(long a)=>a>1?a*f(a-1):1;}


                                                                                                                                  Try it online!



                                                                                                                                  Based off of alephalpha's formula.






                                                                                                                                  share|improve this answer









                                                                                                                                  $endgroup$


















                                                                                                                                    0












                                                                                                                                    $begingroup$


                                                                                                                                    C# (Visual C# Interactive Compiler), 120 bytes





                                                                                                                                    n=>{for(long i=-1,h=0,m=0;++i<20;Print(i<1?1:h))for(m=h=0;m<=n;)h+=f(i)/(f(m)*f(i-m++));long f(long a)=>a>1?a*f(a-1):1;}


                                                                                                                                    Try it online!



                                                                                                                                    Based off of alephalpha's formula.






                                                                                                                                    share|improve this answer









                                                                                                                                    $endgroup$
















                                                                                                                                      0












                                                                                                                                      0








                                                                                                                                      0





                                                                                                                                      $begingroup$


                                                                                                                                      C# (Visual C# Interactive Compiler), 120 bytes





                                                                                                                                      n=>{for(long i=-1,h=0,m=0;++i<20;Print(i<1?1:h))for(m=h=0;m<=n;)h+=f(i)/(f(m)*f(i-m++));long f(long a)=>a>1?a*f(a-1):1;}


                                                                                                                                      Try it online!



                                                                                                                                      Based off of alephalpha's formula.






                                                                                                                                      share|improve this answer









                                                                                                                                      $endgroup$




                                                                                                                                      C# (Visual C# Interactive Compiler), 120 bytes





                                                                                                                                      n=>{for(long i=-1,h=0,m=0;++i<20;Print(i<1?1:h))for(m=h=0;m<=n;)h+=f(i)/(f(m)*f(i-m++));long f(long a)=>a>1?a*f(a-1):1;}


                                                                                                                                      Try it online!



                                                                                                                                      Based off of alephalpha's formula.







                                                                                                                                      share|improve this answer












                                                                                                                                      share|improve this answer



                                                                                                                                      share|improve this answer










                                                                                                                                      answered 15 hours ago









                                                                                                                                      Embodiment of IgnoranceEmbodiment of Ignorance

                                                                                                                                      1,448123




                                                                                                                                      1,448123























                                                                                                                                          0












                                                                                                                                          $begingroup$


                                                                                                                                          K (oK), 18 bytes



                                                                                                                                          {x(+1,19#)/1+!20}


                                                                                                                                          Try it online!



                                                                                                                                          0-indexed






                                                                                                                                          share|improve this answer









                                                                                                                                          $endgroup$


















                                                                                                                                            0












                                                                                                                                            $begingroup$


                                                                                                                                            K (oK), 18 bytes



                                                                                                                                            {x(+1,19#)/1+!20}


                                                                                                                                            Try it online!



                                                                                                                                            0-indexed






                                                                                                                                            share|improve this answer









                                                                                                                                            $endgroup$
















                                                                                                                                              0












                                                                                                                                              0








                                                                                                                                              0





                                                                                                                                              $begingroup$


                                                                                                                                              K (oK), 18 bytes



                                                                                                                                              {x(+1,19#)/1+!20}


                                                                                                                                              Try it online!



                                                                                                                                              0-indexed






                                                                                                                                              share|improve this answer









                                                                                                                                              $endgroup$




                                                                                                                                              K (oK), 18 bytes



                                                                                                                                              {x(+1,19#)/1+!20}


                                                                                                                                              Try it online!



                                                                                                                                              0-indexed







                                                                                                                                              share|improve this answer












                                                                                                                                              share|improve this answer



                                                                                                                                              share|improve this answer










                                                                                                                                              answered 10 hours ago









                                                                                                                                              Galen IvanovGalen Ivanov

                                                                                                                                              6,92711034




                                                                                                                                              6,92711034























                                                                                                                                                  0












                                                                                                                                                  $begingroup$

                                                                                                                                                  Perl 5, 48 bytes



                                                                                                                                                  $x=1,@A=(1,map$x+=$_,@A[0..18])for 0..$_;$_="@A"


                                                                                                                                                  TIO






                                                                                                                                                  share|improve this answer









                                                                                                                                                  $endgroup$


















                                                                                                                                                    0












                                                                                                                                                    $begingroup$

                                                                                                                                                    Perl 5, 48 bytes



                                                                                                                                                    $x=1,@A=(1,map$x+=$_,@A[0..18])for 0..$_;$_="@A"


                                                                                                                                                    TIO






                                                                                                                                                    share|improve this answer









                                                                                                                                                    $endgroup$
















                                                                                                                                                      0












                                                                                                                                                      0








                                                                                                                                                      0





                                                                                                                                                      $begingroup$

                                                                                                                                                      Perl 5, 48 bytes



                                                                                                                                                      $x=1,@A=(1,map$x+=$_,@A[0..18])for 0..$_;$_="@A"


                                                                                                                                                      TIO






                                                                                                                                                      share|improve this answer









                                                                                                                                                      $endgroup$



                                                                                                                                                      Perl 5, 48 bytes



                                                                                                                                                      $x=1,@A=(1,map$x+=$_,@A[0..18])for 0..$_;$_="@A"


                                                                                                                                                      TIO







                                                                                                                                                      share|improve this answer












                                                                                                                                                      share|improve this answer



                                                                                                                                                      share|improve this answer










                                                                                                                                                      answered 5 hours ago









                                                                                                                                                      Nahuel FouilleulNahuel Fouilleul

                                                                                                                                                      2,67029




                                                                                                                                                      2,67029























                                                                                                                                                          0












                                                                                                                                                          $begingroup$


                                                                                                                                                          Japt, 15 bytes



                                                                                                                                                          0-indexed; replace h with p for 1-indexed.



                                                                                                                                                          ÈîXi1 å+}gNh20õ


                                                                                                                                                          Try it






                                                                                                                                                          share|improve this answer









                                                                                                                                                          $endgroup$


















                                                                                                                                                            0












                                                                                                                                                            $begingroup$


                                                                                                                                                            Japt, 15 bytes



                                                                                                                                                            0-indexed; replace h with p for 1-indexed.



                                                                                                                                                            ÈîXi1 å+}gNh20õ


                                                                                                                                                            Try it






                                                                                                                                                            share|improve this answer









                                                                                                                                                            $endgroup$
















                                                                                                                                                              0












                                                                                                                                                              0








                                                                                                                                                              0





                                                                                                                                                              $begingroup$


                                                                                                                                                              Japt, 15 bytes



                                                                                                                                                              0-indexed; replace h with p for 1-indexed.



                                                                                                                                                              ÈîXi1 å+}gNh20õ


                                                                                                                                                              Try it






                                                                                                                                                              share|improve this answer









                                                                                                                                                              $endgroup$




                                                                                                                                                              Japt, 15 bytes



                                                                                                                                                              0-indexed; replace h with p for 1-indexed.



                                                                                                                                                              ÈîXi1 å+}gNh20õ


                                                                                                                                                              Try it







                                                                                                                                                              share|improve this answer












                                                                                                                                                              share|improve this answer



                                                                                                                                                              share|improve this answer










                                                                                                                                                              answered 1 hour ago









                                                                                                                                                              ShaggyShaggy

                                                                                                                                                              19.3k21667




                                                                                                                                                              19.3k21667






























                                                                                                                                                                  draft saved

                                                                                                                                                                  draft discarded




















































                                                                                                                                                                  If this is an answer to a challenge…




                                                                                                                                                                  • …Be sure to follow the challenge specification. However, please refrain from exploiting obvious loopholes. Answers abusing any of the standard loopholes are considered invalid. If you think a specification is unclear or underspecified, comment on the question instead.


                                                                                                                                                                  • …Try to optimize your score. For instance, answers to code-golf challenges should attempt to be as short as possible. You can always include a readable version of the code in addition to the competitive one.
                                                                                                                                                                    Explanations of your answer make it more interesting to read and are very much encouraged.


                                                                                                                                                                  • …Include a short header which indicates the language(s) of your code and its score, as defined by the challenge.



                                                                                                                                                                  More generally…




                                                                                                                                                                  • …Please make sure to answer the question and provide sufficient detail.


                                                                                                                                                                  • …Avoid asking for help, clarification or responding to other answers (use comments instead).





                                                                                                                                                                  draft saved


                                                                                                                                                                  draft discarded














                                                                                                                                                                  StackExchange.ready(
                                                                                                                                                                  function () {
                                                                                                                                                                  StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fcodegolf.stackexchange.com%2fquestions%2f180855%2fmake-me-a-metasequence%23new-answer', 'question_page');
                                                                                                                                                                  }
                                                                                                                                                                  );

                                                                                                                                                                  Post as a guest















                                                                                                                                                                  Required, but never shown





















































                                                                                                                                                                  Required, but never shown














                                                                                                                                                                  Required, but never shown












                                                                                                                                                                  Required, but never shown







                                                                                                                                                                  Required, but never shown

































                                                                                                                                                                  Required, but never shown














                                                                                                                                                                  Required, but never shown












                                                                                                                                                                  Required, but never shown







                                                                                                                                                                  Required, but never shown







                                                                                                                                                                  Popular posts from this blog

                                                                                                                                                                  El tren de la libertad Índice Antecedentes "Porque yo decido" Desarrollo de la...

                                                                                                                                                                  Castillo d'Acher Características Menú de navegación

                                                                                                                                                                  Connecting two nodes from the same mother node horizontallyTikZ: What EXACTLY does the the |- notation for...