Patience, young “Padovan”Output the van der Corput sequenceGenerate n-ary numbersGenerate a Padovan SpiralGenerate an ASCII Padovan SpiralGolf a Custom Fibonacci SequenceImplement the Fibonacci sequence… Shifted to the rightDizzy integer enumerationModulus SummationFour Spiraling AxesIt's getting harder and harder to be composite these days
Why don't electron-positron collisions release infinite energy?
Japan - Plan around max visa duration
Copenhagen passport control - US citizen
How is this relation reflexive?
Is there a familial term for apples and pears?
Today is the Center
Is it possible to do 50 km distance without any previous training?
Why can't I see bouncing of a switch on an oscilloscope?
How can I fix this gap between bookcases I made?
Download, install and reboot computer at night if needed
TGV timetables / schedules?
Why are only specific transaction types accepted into the mempool?
If Manufacturer spice model and Datasheet give different values which should I use?
GPS Rollover on Android Smartphones
Why are 150k or 200k jobs considered good when there are 300k+ births a month?
Book about a traveler who helps planets in need
Pronouncing Dictionary.com's W.O.D "vade mecum" in English
Do Phineas and Ferb ever actually get busted in real time?
Why did the Germans forbid the possession of pet pigeons in Rostov-on-Don in 1941?
How to report a triplet of septets in NMR tabulation?
Why Is Death Allowed In the Matrix?
How can bays and straits be determined in a procedurally generated map?
How do I create uniquely male characters?
Suffixes -unt and -ut-
Patience, young “Padovan”
Output the van der Corput sequenceGenerate n-ary numbersGenerate a Padovan SpiralGenerate an ASCII Padovan SpiralGolf a Custom Fibonacci SequenceImplement the Fibonacci sequence… Shifted to the rightDizzy integer enumerationModulus SummationFour Spiraling AxesIt's getting harder and harder to be composite these days
$begingroup$
Everyone knows the Fibonacci sequence:
You take a square, attach an equal square to it, then repeatedly attach a square whose side length is equal to the largest side length of the resulting rectangle.
The result is a beautiful spiral of squares whose sequence of numbers is the Fibonacci sequence:

But, what if we didn't want to use squares?
If we use equilateral triangles—instead of squares—in a similar fashion, we get an equally beautiful spiral of triangles and a new sequence: the Padovan sequence, aka A000931:

Task:
Given a positive integer, $N$, output $a_N$, the $N$th term in the Padovan sequence OR the first $N$ terms.
Assume that the first three terms of the sequence are all $1$. Thus, the sequence will start as follows:
$$
1,1,1,2,2,3,...
$$
Input:
Any positive integer $Nge0$
Invalid input does not have to be taken into account
Output:
The $N$th term in the Padovan sequence OR the first $N$ terms of the Padovan sequence.
If the first $N$ terms are printed out, the output can be whatever is convenient (list/array, multi-line string, etc.)
Can be either $0$-indexed or $1$-indexed
Test Cases:
(0-indexed, $N$th term)
Input | Output
--------------
0 | 1
1 | 1
2 | 1
4 | 2
6 | 4
14 | 37
20 | 200
33 | 7739
(0-indexed, first $N$ terms)
Input | Output
--------------
1 | 1
3 | 1,1,1
4 | 1,1,1,2
7 | 1,1,1,2,2,3,4
10 | 1,1,1,2,2,3,4,5,7,9
12 | 1,1,1,2,2,3,4,5,7,9,12,16
Rules:
This is code-golf: the fewer bytes, the better!
Standard loopholes are forbidden.
code-golf number sequence
$endgroup$
add a comment |
$begingroup$
Everyone knows the Fibonacci sequence:
You take a square, attach an equal square to it, then repeatedly attach a square whose side length is equal to the largest side length of the resulting rectangle.
The result is a beautiful spiral of squares whose sequence of numbers is the Fibonacci sequence:

But, what if we didn't want to use squares?
If we use equilateral triangles—instead of squares—in a similar fashion, we get an equally beautiful spiral of triangles and a new sequence: the Padovan sequence, aka A000931:

Task:
Given a positive integer, $N$, output $a_N$, the $N$th term in the Padovan sequence OR the first $N$ terms.
Assume that the first three terms of the sequence are all $1$. Thus, the sequence will start as follows:
$$
1,1,1,2,2,3,...
$$
Input:
Any positive integer $Nge0$
Invalid input does not have to be taken into account
Output:
The $N$th term in the Padovan sequence OR the first $N$ terms of the Padovan sequence.
If the first $N$ terms are printed out, the output can be whatever is convenient (list/array, multi-line string, etc.)
Can be either $0$-indexed or $1$-indexed
Test Cases:
(0-indexed, $N$th term)
Input | Output
--------------
0 | 1
1 | 1
2 | 1
4 | 2
6 | 4
14 | 37
20 | 200
33 | 7739
(0-indexed, first $N$ terms)
Input | Output
--------------
1 | 1
3 | 1,1,1
4 | 1,1,1,2
7 | 1,1,1,2,2,3,4
10 | 1,1,1,2,2,3,4,5,7,9
12 | 1,1,1,2,2,3,4,5,7,9,12,16
Rules:
This is code-golf: the fewer bytes, the better!
Standard loopholes are forbidden.
code-golf number sequence
$endgroup$
$begingroup$
Sandbox post can be found here.
$endgroup$
– Tau
1 hour ago
1
$begingroup$
14(0-indexed) is shown as outputting28while I believe it should yield37
$endgroup$
– Jonathan Allan
1 hour ago
$begingroup$
@JonathanAllan yes, you are correct. I fixed the last two test cases for $N$th term but not that one. The post has been edited.
$endgroup$
– Tau
1 hour ago
add a comment |
$begingroup$
Everyone knows the Fibonacci sequence:
You take a square, attach an equal square to it, then repeatedly attach a square whose side length is equal to the largest side length of the resulting rectangle.
The result is a beautiful spiral of squares whose sequence of numbers is the Fibonacci sequence:

But, what if we didn't want to use squares?
If we use equilateral triangles—instead of squares—in a similar fashion, we get an equally beautiful spiral of triangles and a new sequence: the Padovan sequence, aka A000931:

Task:
Given a positive integer, $N$, output $a_N$, the $N$th term in the Padovan sequence OR the first $N$ terms.
Assume that the first three terms of the sequence are all $1$. Thus, the sequence will start as follows:
$$
1,1,1,2,2,3,...
$$
Input:
Any positive integer $Nge0$
Invalid input does not have to be taken into account
Output:
The $N$th term in the Padovan sequence OR the first $N$ terms of the Padovan sequence.
If the first $N$ terms are printed out, the output can be whatever is convenient (list/array, multi-line string, etc.)
Can be either $0$-indexed or $1$-indexed
Test Cases:
(0-indexed, $N$th term)
Input | Output
--------------
0 | 1
1 | 1
2 | 1
4 | 2
6 | 4
14 | 37
20 | 200
33 | 7739
(0-indexed, first $N$ terms)
Input | Output
--------------
1 | 1
3 | 1,1,1
4 | 1,1,1,2
7 | 1,1,1,2,2,3,4
10 | 1,1,1,2,2,3,4,5,7,9
12 | 1,1,1,2,2,3,4,5,7,9,12,16
Rules:
This is code-golf: the fewer bytes, the better!
Standard loopholes are forbidden.
code-golf number sequence
$endgroup$
Everyone knows the Fibonacci sequence:
You take a square, attach an equal square to it, then repeatedly attach a square whose side length is equal to the largest side length of the resulting rectangle.
The result is a beautiful spiral of squares whose sequence of numbers is the Fibonacci sequence:

But, what if we didn't want to use squares?
If we use equilateral triangles—instead of squares—in a similar fashion, we get an equally beautiful spiral of triangles and a new sequence: the Padovan sequence, aka A000931:

Task:
Given a positive integer, $N$, output $a_N$, the $N$th term in the Padovan sequence OR the first $N$ terms.
Assume that the first three terms of the sequence are all $1$. Thus, the sequence will start as follows:
$$
1,1,1,2,2,3,...
$$
Input:
Any positive integer $Nge0$
Invalid input does not have to be taken into account
Output:
The $N$th term in the Padovan sequence OR the first $N$ terms of the Padovan sequence.
If the first $N$ terms are printed out, the output can be whatever is convenient (list/array, multi-line string, etc.)
Can be either $0$-indexed or $1$-indexed
Test Cases:
(0-indexed, $N$th term)
Input | Output
--------------
0 | 1
1 | 1
2 | 1
4 | 2
6 | 4
14 | 37
20 | 200
33 | 7739
(0-indexed, first $N$ terms)
Input | Output
--------------
1 | 1
3 | 1,1,1
4 | 1,1,1,2
7 | 1,1,1,2,2,3,4
10 | 1,1,1,2,2,3,4,5,7,9
12 | 1,1,1,2,2,3,4,5,7,9,12,16
Rules:
This is code-golf: the fewer bytes, the better!
Standard loopholes are forbidden.
code-golf number sequence
code-golf number sequence
edited 1 hour ago
Tau
asked 1 hour ago
TauTau
786313
786313
$begingroup$
Sandbox post can be found here.
$endgroup$
– Tau
1 hour ago
1
$begingroup$
14(0-indexed) is shown as outputting28while I believe it should yield37
$endgroup$
– Jonathan Allan
1 hour ago
$begingroup$
@JonathanAllan yes, you are correct. I fixed the last two test cases for $N$th term but not that one. The post has been edited.
$endgroup$
– Tau
1 hour ago
add a comment |
$begingroup$
Sandbox post can be found here.
$endgroup$
– Tau
1 hour ago
1
$begingroup$
14(0-indexed) is shown as outputting28while I believe it should yield37
$endgroup$
– Jonathan Allan
1 hour ago
$begingroup$
@JonathanAllan yes, you are correct. I fixed the last two test cases for $N$th term but not that one. The post has been edited.
$endgroup$
– Tau
1 hour ago
$begingroup$
Sandbox post can be found here.
$endgroup$
– Tau
1 hour ago
$begingroup$
Sandbox post can be found here.
$endgroup$
– Tau
1 hour ago
1
1
$begingroup$
14 (0-indexed) is shown as outputting 28 while I believe it should yield 37$endgroup$
– Jonathan Allan
1 hour ago
$begingroup$
14 (0-indexed) is shown as outputting 28 while I believe it should yield 37$endgroup$
– Jonathan Allan
1 hour ago
$begingroup$
@JonathanAllan yes, you are correct. I fixed the last two test cases for $N$th term but not that one. The post has been edited.
$endgroup$
– Tau
1 hour ago
$begingroup$
@JonathanAllan yes, you are correct. I fixed the last two test cases for $N$th term but not that one. The post has been edited.
$endgroup$
– Tau
1 hour ago
add a comment |
14 Answers
14
active
oldest
votes
$begingroup$
Haskell, 26 bytes
(l!!)
l=1:1:1:2:scanl(+)2l
Try it online! Outputs the n'th term zero-indexed.
I thought that the "obvious" recursive solution below would be unbeatable, but then I found this. It's similar to the classic golfy expression l=1:scanl(+)1l for the infinite Fibonacci list, but here the difference between adjacent elements is the term 4 positions back. We can more directly write l=1:1:zipWith(+)l(0:l), but that's longer.
If this challenge allowed infinite list output, we could cut the first line and have 20 bytes.
27 bytes
f n|n<3=1|1>0=f(n-2)+f(n-3)
Try it online!
$endgroup$
add a comment |
$begingroup$
Oasis, 5 bytes
nth term 0-indexed
cd+1V
Try it online!
Explanation
1V # a(0) = 1
# a(1) = 1
# a(2) = 1
# a(n) =
c # a(n-2)
+ # +
d # a(n-3)
$endgroup$
add a comment |
$begingroup$
Python 2, 30 bytes
f=lambda n:n<3or f(n-2)+f(n-3)
Try it online!
Returns the n'th term zero indexed. Outputs True for 1.
$endgroup$
add a comment |
$begingroup$
Jelly, 11 bytes
5B+Ɲ2ị;Ʋ⁸¡Ḣ
Try it online!
0-indexed.
$endgroup$
$begingroup$
Can you specify whether this answer is 0-indexed or 1-indexed?
$endgroup$
– Tau
1 hour ago
$begingroup$
@Tau It's 0-indexed. I've edited it in.
$endgroup$
– Erik the Outgolfer
1 hour ago
add a comment |
$begingroup$
Jelly, 10 bytes
‘HŻcḤạ¥¥‘S
A monadic Link accepting n (1-indexed) which yields P(n).
Try it online!
$endgroup$
add a comment |
$begingroup$
Wolfram Language (Mathematica), 33 bytes
a@0=a@1=a@2=1;a@n_:=a[n-2]+a[n-3]
1-indexed, returns the nth term
Try it online!
$endgroup$
add a comment |
$begingroup$
Python 2, 56 48 bytes
f=lambda n,a=1,b=1,c=1:n>2and f(n-1,b,c,a+b)or c
Try it online!
Returns nth value, 0-indexed.
$endgroup$
add a comment |
$begingroup$
J, 26 bytes
0.5<.@+1.04535%~1.32472^<:
Try it online!
Uses the closed form formula.
$endgroup$
add a comment |
$begingroup$
Japt -N, 12 bytes
<3ªßUµ2 +ß´U
Try it
$endgroup$
add a comment |
$begingroup$
C# (Visual C# Interactive Compiler), 34 bytes
int f(int g)=>g<3?1:f(g-2)+f(g-3);
Try it online!
$endgroup$
add a comment |
$begingroup$
JavaScript (ES6), 23 bytes
Implements the recursive definition of A000931. Returns the $N$th term, 0-indexed.
f=n=>n<3||f(n-2)+f(n-3)
Try it online!
$endgroup$
add a comment |
$begingroup$
Retina, 47 42 bytes
K`0¶1¶0
"$+"+`.+¶(.+)¶.+$
$&¶$.(*_$1*
6,G`
Try it online! Outputs the first n terms on separate lines. Explanation:
K`0¶1¶0
Replace the input with the terms for -2, -1 and 0.
"$+"+`.+¶(.+)¶.+$
$&¶$.(*_$1*
Generate the next n terms using the recurrence relation. *_ here is short for $&*_ which converts the (first) number in the match to unary, while $1* is short for $1*_ which converts the middle number to unary. The $.( returns the decimal sum of its unary arguments, i.e. the sum of the first and middle numbers.
6,G`
Discard the first six characters, i.e. the first three lines.
$endgroup$
add a comment |
$begingroup$
Japt, 12 bytes
Returns the first n terms.
ÈnZs3n)x}hBì
Try it
$endgroup$
add a comment |
$begingroup$
Lua 5.3, 49 bytes
function f(n)return n<=3 and 1or f(n-2)+f(n-3)end
Try it online!
Vanilla Lua doesn't have coercion of booleans to strings (even tonumber(true) returns nil), so you have to use a pseudo-ternary operator. This version is 1-indexed, like all of Lua. The 1or part has to be changed to 1 or in Lua 5.1, which has a different way of lexing integers.
$endgroup$
add a comment |
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
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fcodegolf.stackexchange.com%2fquestions%2f182797%2fpatience-young-padovan%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
14 Answers
14
active
oldest
votes
14 Answers
14
active
oldest
votes
active
oldest
votes
active
oldest
votes
$begingroup$
Haskell, 26 bytes
(l!!)
l=1:1:1:2:scanl(+)2l
Try it online! Outputs the n'th term zero-indexed.
I thought that the "obvious" recursive solution below would be unbeatable, but then I found this. It's similar to the classic golfy expression l=1:scanl(+)1l for the infinite Fibonacci list, but here the difference between adjacent elements is the term 4 positions back. We can more directly write l=1:1:zipWith(+)l(0:l), but that's longer.
If this challenge allowed infinite list output, we could cut the first line and have 20 bytes.
27 bytes
f n|n<3=1|1>0=f(n-2)+f(n-3)
Try it online!
$endgroup$
add a comment |
$begingroup$
Haskell, 26 bytes
(l!!)
l=1:1:1:2:scanl(+)2l
Try it online! Outputs the n'th term zero-indexed.
I thought that the "obvious" recursive solution below would be unbeatable, but then I found this. It's similar to the classic golfy expression l=1:scanl(+)1l for the infinite Fibonacci list, but here the difference between adjacent elements is the term 4 positions back. We can more directly write l=1:1:zipWith(+)l(0:l), but that's longer.
If this challenge allowed infinite list output, we could cut the first line and have 20 bytes.
27 bytes
f n|n<3=1|1>0=f(n-2)+f(n-3)
Try it online!
$endgroup$
add a comment |
$begingroup$
Haskell, 26 bytes
(l!!)
l=1:1:1:2:scanl(+)2l
Try it online! Outputs the n'th term zero-indexed.
I thought that the "obvious" recursive solution below would be unbeatable, but then I found this. It's similar to the classic golfy expression l=1:scanl(+)1l for the infinite Fibonacci list, but here the difference between adjacent elements is the term 4 positions back. We can more directly write l=1:1:zipWith(+)l(0:l), but that's longer.
If this challenge allowed infinite list output, we could cut the first line and have 20 bytes.
27 bytes
f n|n<3=1|1>0=f(n-2)+f(n-3)
Try it online!
$endgroup$
Haskell, 26 bytes
(l!!)
l=1:1:1:2:scanl(+)2l
Try it online! Outputs the n'th term zero-indexed.
I thought that the "obvious" recursive solution below would be unbeatable, but then I found this. It's similar to the classic golfy expression l=1:scanl(+)1l for the infinite Fibonacci list, but here the difference between adjacent elements is the term 4 positions back. We can more directly write l=1:1:zipWith(+)l(0:l), but that's longer.
If this challenge allowed infinite list output, we could cut the first line and have 20 bytes.
27 bytes
f n|n<3=1|1>0=f(n-2)+f(n-3)
Try it online!
answered 39 mins ago
xnorxnor
93.3k18190448
93.3k18190448
add a comment |
add a comment |
$begingroup$
Oasis, 5 bytes
nth term 0-indexed
cd+1V
Try it online!
Explanation
1V # a(0) = 1
# a(1) = 1
# a(2) = 1
# a(n) =
c # a(n-2)
+ # +
d # a(n-3)
$endgroup$
add a comment |
$begingroup$
Oasis, 5 bytes
nth term 0-indexed
cd+1V
Try it online!
Explanation
1V # a(0) = 1
# a(1) = 1
# a(2) = 1
# a(n) =
c # a(n-2)
+ # +
d # a(n-3)
$endgroup$
add a comment |
$begingroup$
Oasis, 5 bytes
nth term 0-indexed
cd+1V
Try it online!
Explanation
1V # a(0) = 1
# a(1) = 1
# a(2) = 1
# a(n) =
c # a(n-2)
+ # +
d # a(n-3)
$endgroup$
Oasis, 5 bytes
nth term 0-indexed
cd+1V
Try it online!
Explanation
1V # a(0) = 1
# a(1) = 1
# a(2) = 1
# a(n) =
c # a(n-2)
+ # +
d # a(n-3)
answered 1 hour ago
EmignaEmigna
47.4k433144
47.4k433144
add a comment |
add a comment |
$begingroup$
Python 2, 30 bytes
f=lambda n:n<3or f(n-2)+f(n-3)
Try it online!
Returns the n'th term zero indexed. Outputs True for 1.
$endgroup$
add a comment |
$begingroup$
Python 2, 30 bytes
f=lambda n:n<3or f(n-2)+f(n-3)
Try it online!
Returns the n'th term zero indexed. Outputs True for 1.
$endgroup$
add a comment |
$begingroup$
Python 2, 30 bytes
f=lambda n:n<3or f(n-2)+f(n-3)
Try it online!
Returns the n'th term zero indexed. Outputs True for 1.
$endgroup$
Python 2, 30 bytes
f=lambda n:n<3or f(n-2)+f(n-3)
Try it online!
Returns the n'th term zero indexed. Outputs True for 1.
edited 1 hour ago
answered 1 hour ago
xnorxnor
93.3k18190448
93.3k18190448
add a comment |
add a comment |
$begingroup$
Jelly, 11 bytes
5B+Ɲ2ị;Ʋ⁸¡Ḣ
Try it online!
0-indexed.
$endgroup$
$begingroup$
Can you specify whether this answer is 0-indexed or 1-indexed?
$endgroup$
– Tau
1 hour ago
$begingroup$
@Tau It's 0-indexed. I've edited it in.
$endgroup$
– Erik the Outgolfer
1 hour ago
add a comment |
$begingroup$
Jelly, 11 bytes
5B+Ɲ2ị;Ʋ⁸¡Ḣ
Try it online!
0-indexed.
$endgroup$
$begingroup$
Can you specify whether this answer is 0-indexed or 1-indexed?
$endgroup$
– Tau
1 hour ago
$begingroup$
@Tau It's 0-indexed. I've edited it in.
$endgroup$
– Erik the Outgolfer
1 hour ago
add a comment |
$begingroup$
Jelly, 11 bytes
5B+Ɲ2ị;Ʋ⁸¡Ḣ
Try it online!
0-indexed.
$endgroup$
Jelly, 11 bytes
5B+Ɲ2ị;Ʋ⁸¡Ḣ
Try it online!
0-indexed.
edited 1 hour ago
answered 1 hour ago
Erik the OutgolferErik the Outgolfer
33k429106
33k429106
$begingroup$
Can you specify whether this answer is 0-indexed or 1-indexed?
$endgroup$
– Tau
1 hour ago
$begingroup$
@Tau It's 0-indexed. I've edited it in.
$endgroup$
– Erik the Outgolfer
1 hour ago
add a comment |
$begingroup$
Can you specify whether this answer is 0-indexed or 1-indexed?
$endgroup$
– Tau
1 hour ago
$begingroup$
@Tau It's 0-indexed. I've edited it in.
$endgroup$
– Erik the Outgolfer
1 hour ago
$begingroup$
Can you specify whether this answer is 0-indexed or 1-indexed?
$endgroup$
– Tau
1 hour ago
$begingroup$
Can you specify whether this answer is 0-indexed or 1-indexed?
$endgroup$
– Tau
1 hour ago
$begingroup$
@Tau It's 0-indexed. I've edited it in.
$endgroup$
– Erik the Outgolfer
1 hour ago
$begingroup$
@Tau It's 0-indexed. I've edited it in.
$endgroup$
– Erik the Outgolfer
1 hour ago
add a comment |
$begingroup$
Jelly, 10 bytes
‘HŻcḤạ¥¥‘S
A monadic Link accepting n (1-indexed) which yields P(n).
Try it online!
$endgroup$
add a comment |
$begingroup$
Jelly, 10 bytes
‘HŻcḤạ¥¥‘S
A monadic Link accepting n (1-indexed) which yields P(n).
Try it online!
$endgroup$
add a comment |
$begingroup$
Jelly, 10 bytes
‘HŻcḤạ¥¥‘S
A monadic Link accepting n (1-indexed) which yields P(n).
Try it online!
$endgroup$
Jelly, 10 bytes
‘HŻcḤạ¥¥‘S
A monadic Link accepting n (1-indexed) which yields P(n).
Try it online!
answered 1 hour ago
Jonathan AllanJonathan Allan
53.7k535173
53.7k535173
add a comment |
add a comment |
$begingroup$
Wolfram Language (Mathematica), 33 bytes
a@0=a@1=a@2=1;a@n_:=a[n-2]+a[n-3]
1-indexed, returns the nth term
Try it online!
$endgroup$
add a comment |
$begingroup$
Wolfram Language (Mathematica), 33 bytes
a@0=a@1=a@2=1;a@n_:=a[n-2]+a[n-3]
1-indexed, returns the nth term
Try it online!
$endgroup$
add a comment |
$begingroup$
Wolfram Language (Mathematica), 33 bytes
a@0=a@1=a@2=1;a@n_:=a[n-2]+a[n-3]
1-indexed, returns the nth term
Try it online!
$endgroup$
Wolfram Language (Mathematica), 33 bytes
a@0=a@1=a@2=1;a@n_:=a[n-2]+a[n-3]
1-indexed, returns the nth term
Try it online!
answered 1 hour ago
J42161217J42161217
13.8k21253
13.8k21253
add a comment |
add a comment |
$begingroup$
Python 2, 56 48 bytes
f=lambda n,a=1,b=1,c=1:n>2and f(n-1,b,c,a+b)or c
Try it online!
Returns nth value, 0-indexed.
$endgroup$
add a comment |
$begingroup$
Python 2, 56 48 bytes
f=lambda n,a=1,b=1,c=1:n>2and f(n-1,b,c,a+b)or c
Try it online!
Returns nth value, 0-indexed.
$endgroup$
add a comment |
$begingroup$
Python 2, 56 48 bytes
f=lambda n,a=1,b=1,c=1:n>2and f(n-1,b,c,a+b)or c
Try it online!
Returns nth value, 0-indexed.
$endgroup$
Python 2, 56 48 bytes
f=lambda n,a=1,b=1,c=1:n>2and f(n-1,b,c,a+b)or c
Try it online!
Returns nth value, 0-indexed.
answered 1 hour ago
Chas BrownChas Brown
5,2091523
5,2091523
add a comment |
add a comment |
$begingroup$
J, 26 bytes
0.5<.@+1.04535%~1.32472^<:
Try it online!
Uses the closed form formula.
$endgroup$
add a comment |
$begingroup$
J, 26 bytes
0.5<.@+1.04535%~1.32472^<:
Try it online!
Uses the closed form formula.
$endgroup$
add a comment |
$begingroup$
J, 26 bytes
0.5<.@+1.04535%~1.32472^<:
Try it online!
Uses the closed form formula.
$endgroup$
J, 26 bytes
0.5<.@+1.04535%~1.32472^<:
Try it online!
Uses the closed form formula.
edited 1 hour ago
answered 1 hour ago
JonahJonah
2,5911017
2,5911017
add a comment |
add a comment |
$begingroup$
Japt -N, 12 bytes
<3ªßUµ2 +ß´U
Try it
$endgroup$
add a comment |
$begingroup$
Japt -N, 12 bytes
<3ªßUµ2 +ß´U
Try it
$endgroup$
add a comment |
$begingroup$
Japt -N, 12 bytes
<3ªßUµ2 +ß´U
Try it
$endgroup$
Japt -N, 12 bytes
<3ªßUµ2 +ß´U
Try it
answered 48 mins ago
Embodiment of IgnoranceEmbodiment of Ignorance
2,818127
2,818127
add a comment |
add a comment |
$begingroup$
C# (Visual C# Interactive Compiler), 34 bytes
int f(int g)=>g<3?1:f(g-2)+f(g-3);
Try it online!
$endgroup$
add a comment |
$begingroup$
C# (Visual C# Interactive Compiler), 34 bytes
int f(int g)=>g<3?1:f(g-2)+f(g-3);
Try it online!
$endgroup$
add a comment |
$begingroup$
C# (Visual C# Interactive Compiler), 34 bytes
int f(int g)=>g<3?1:f(g-2)+f(g-3);
Try it online!
$endgroup$
C# (Visual C# Interactive Compiler), 34 bytes
int f(int g)=>g<3?1:f(g-2)+f(g-3);
Try it online!
answered 58 mins ago
Embodiment of IgnoranceEmbodiment of Ignorance
2,818127
2,818127
add a comment |
add a comment |
$begingroup$
JavaScript (ES6), 23 bytes
Implements the recursive definition of A000931. Returns the $N$th term, 0-indexed.
f=n=>n<3||f(n-2)+f(n-3)
Try it online!
$endgroup$
add a comment |
$begingroup$
JavaScript (ES6), 23 bytes
Implements the recursive definition of A000931. Returns the $N$th term, 0-indexed.
f=n=>n<3||f(n-2)+f(n-3)
Try it online!
$endgroup$
add a comment |
$begingroup$
JavaScript (ES6), 23 bytes
Implements the recursive definition of A000931. Returns the $N$th term, 0-indexed.
f=n=>n<3||f(n-2)+f(n-3)
Try it online!
$endgroup$
JavaScript (ES6), 23 bytes
Implements the recursive definition of A000931. Returns the $N$th term, 0-indexed.
f=n=>n<3||f(n-2)+f(n-3)
Try it online!
edited 51 mins ago
answered 57 mins ago
ArnauldArnauld
80.5k797333
80.5k797333
add a comment |
add a comment |
$begingroup$
Retina, 47 42 bytes
K`0¶1¶0
"$+"+`.+¶(.+)¶.+$
$&¶$.(*_$1*
6,G`
Try it online! Outputs the first n terms on separate lines. Explanation:
K`0¶1¶0
Replace the input with the terms for -2, -1 and 0.
"$+"+`.+¶(.+)¶.+$
$&¶$.(*_$1*
Generate the next n terms using the recurrence relation. *_ here is short for $&*_ which converts the (first) number in the match to unary, while $1* is short for $1*_ which converts the middle number to unary. The $.( returns the decimal sum of its unary arguments, i.e. the sum of the first and middle numbers.
6,G`
Discard the first six characters, i.e. the first three lines.
$endgroup$
add a comment |
$begingroup$
Retina, 47 42 bytes
K`0¶1¶0
"$+"+`.+¶(.+)¶.+$
$&¶$.(*_$1*
6,G`
Try it online! Outputs the first n terms on separate lines. Explanation:
K`0¶1¶0
Replace the input with the terms for -2, -1 and 0.
"$+"+`.+¶(.+)¶.+$
$&¶$.(*_$1*
Generate the next n terms using the recurrence relation. *_ here is short for $&*_ which converts the (first) number in the match to unary, while $1* is short for $1*_ which converts the middle number to unary. The $.( returns the decimal sum of its unary arguments, i.e. the sum of the first and middle numbers.
6,G`
Discard the first six characters, i.e. the first three lines.
$endgroup$
add a comment |
$begingroup$
Retina, 47 42 bytes
K`0¶1¶0
"$+"+`.+¶(.+)¶.+$
$&¶$.(*_$1*
6,G`
Try it online! Outputs the first n terms on separate lines. Explanation:
K`0¶1¶0
Replace the input with the terms for -2, -1 and 0.
"$+"+`.+¶(.+)¶.+$
$&¶$.(*_$1*
Generate the next n terms using the recurrence relation. *_ here is short for $&*_ which converts the (first) number in the match to unary, while $1* is short for $1*_ which converts the middle number to unary. The $.( returns the decimal sum of its unary arguments, i.e. the sum of the first and middle numbers.
6,G`
Discard the first six characters, i.e. the first three lines.
$endgroup$
Retina, 47 42 bytes
K`0¶1¶0
"$+"+`.+¶(.+)¶.+$
$&¶$.(*_$1*
6,G`
Try it online! Outputs the first n terms on separate lines. Explanation:
K`0¶1¶0
Replace the input with the terms for -2, -1 and 0.
"$+"+`.+¶(.+)¶.+$
$&¶$.(*_$1*
Generate the next n terms using the recurrence relation. *_ here is short for $&*_ which converts the (first) number in the match to unary, while $1* is short for $1*_ which converts the middle number to unary. The $.( returns the decimal sum of its unary arguments, i.e. the sum of the first and middle numbers.
6,G`
Discard the first six characters, i.e. the first three lines.
edited 38 mins ago
answered 48 mins ago
NeilNeil
82.6k745179
82.6k745179
add a comment |
add a comment |
$begingroup$
Japt, 12 bytes
Returns the first n terms.
ÈnZs3n)x}hBì
Try it
$endgroup$
add a comment |
$begingroup$
Japt, 12 bytes
Returns the first n terms.
ÈnZs3n)x}hBì
Try it
$endgroup$
add a comment |
$begingroup$
Japt, 12 bytes
Returns the first n terms.
ÈnZs3n)x}hBì
Try it
$endgroup$
Japt, 12 bytes
Returns the first n terms.
ÈnZs3n)x}hBì
Try it
answered 6 mins ago
ShaggyShaggy
18.9k21768
18.9k21768
add a comment |
add a comment |
$begingroup$
Lua 5.3, 49 bytes
function f(n)return n<=3 and 1or f(n-2)+f(n-3)end
Try it online!
Vanilla Lua doesn't have coercion of booleans to strings (even tonumber(true) returns nil), so you have to use a pseudo-ternary operator. This version is 1-indexed, like all of Lua. The 1or part has to be changed to 1 or in Lua 5.1, which has a different way of lexing integers.
$endgroup$
add a comment |
$begingroup$
Lua 5.3, 49 bytes
function f(n)return n<=3 and 1or f(n-2)+f(n-3)end
Try it online!
Vanilla Lua doesn't have coercion of booleans to strings (even tonumber(true) returns nil), so you have to use a pseudo-ternary operator. This version is 1-indexed, like all of Lua. The 1or part has to be changed to 1 or in Lua 5.1, which has a different way of lexing integers.
$endgroup$
add a comment |
$begingroup$
Lua 5.3, 49 bytes
function f(n)return n<=3 and 1or f(n-2)+f(n-3)end
Try it online!
Vanilla Lua doesn't have coercion of booleans to strings (even tonumber(true) returns nil), so you have to use a pseudo-ternary operator. This version is 1-indexed, like all of Lua. The 1or part has to be changed to 1 or in Lua 5.1, which has a different way of lexing integers.
$endgroup$
Lua 5.3, 49 bytes
function f(n)return n<=3 and 1or f(n-2)+f(n-3)end
Try it online!
Vanilla Lua doesn't have coercion of booleans to strings (even tonumber(true) returns nil), so you have to use a pseudo-ternary operator. This version is 1-indexed, like all of Lua. The 1or part has to be changed to 1 or in Lua 5.1, which has a different way of lexing integers.
answered 3 mins ago
cyclaministcyclaminist
1513
1513
add a comment |
add a comment |
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).
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fcodegolf.stackexchange.com%2fquestions%2f182797%2fpatience-young-padovan%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
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
$begingroup$
Sandbox post can be found here.
$endgroup$
– Tau
1 hour ago
1
$begingroup$
14(0-indexed) is shown as outputting28while I believe it should yield37$endgroup$
– Jonathan Allan
1 hour ago
$begingroup$
@JonathanAllan yes, you are correct. I fixed the last two test cases for $N$th term but not that one. The post has been edited.
$endgroup$
– Tau
1 hour ago