New Order #2: Turn My WayIncrementing Gray CodesGive me the Gray Code list of bit width nNew Order #1: How does this feel?Give me the Gray Code list of bit width nPrint the intersection of sequencesHarmonious “Convergence”Sylvester's sequenceIncrementing Gray CodesThe dragon Curve sequenceAlternating bit smearingJumping NumbersMake me a metasequenceNew Order #1: How does this feel?
Can creatures abilities target that creature itself?
PTIJ: Which Dr. Seuss books should one obtain?
How to get directions in deep space?
Could a welfare state co-exist with mega corporations?
How are passwords stolen from companies if they only store hashes?
Strange behavior in TikZ draw command
What do the positive and negative (+/-) transmit and receive pins mean on Ethernet cables?
Do people actually use the word "kaputt" in conversation?
If the Dominion rule using their Jem'Hadar troops, why is their life expectancy so low?
Can a Knock spell open the door to Mordenkainen's Magnificent Mansion?
Exposing a company lying about themselves in a tightly knit industry (videogames) : Is my career at risk on the long run?
Magnifying glass in hyperbolic space
Friend wants my recommendation but I don't want to give it to him
Writing in a Christian voice
Why is participating in the European Parliamentary elections used as a threat?
python displays `n` instead of breaking a line
How can I, as DM, avoid the Conga Line of Death occurring when implementing some form of flanking rule?
Reasons for having MCU pin-states default to pull-up/down out of reset
Why would five hundred and five same as one?
categorizing a variable turns it from insignificant to significant
How can a new country break out from a developed country without war?
New Order #2: Turn My Way
Is there a distance limit for minecart tracks?
Highest stage count that are used one right after the other?
New Order #2: Turn My Way
Incrementing Gray CodesGive me the Gray Code list of bit width nNew Order #1: How does this feel?Give me the Gray Code list of bit width nPrint the intersection of sequencesHarmonious “Convergence”Sylvester's sequenceIncrementing Gray CodesThe dragon Curve sequenceAlternating bit smearingJumping NumbersMake me a metasequenceNew Order #1: How does this feel?
$begingroup$
Introduction (may be ignored)
Putting all positive numbers in its regular order (1, 2, 3, ...) is a bit boring, isn't it? So here is a series of challenges around permutations (reshuffelings) of all positive numbers. This is the second challenge in this series. The first challenge can be found here.
In this challenge, we use Gray codes to rearrage the natural numbers. A Gray code, or "reflected binary code" is a binary encoding in such a way that two successive values differ in only one bit. A practical application of this encoding is to use it in rotary encoders, hence my reference to "Turn My Way".
Note that this encoding leaves some degree of freedom. For example, following binary 1100, there are four possible following codes: 1101, 1110, 1000 and 0100. This is why I will define $a(n)$ as the smallest, not previously used value that differs only one character in binary encoding. This sequence corresponds with A163252.
Since this is a "pure sequence" challenge, the task is to output $a(n)$ for a given $n$ as input, where $a(n)$ is A163252.
Task
Given an integer input $n$, output $a(n)$ in integer format (not in binary format).
$a(n)$ is defined as the least positive integer not occurring earlier in the sequence such that $a(n-1)$ and $a(n)$ differ in only one bit when written in binary.
Note: 1-based indexing is assumed here; you may use 0-based indexing, so $a(0) = 1; a(1) = 3$, etc. Please mention this in your answer if you choose to use this.
Test cases
Input | Output
--------------
1 | 1
5 | 4
20 | 18
50 | 48
123 | 121
1234 | 1333
3000 | 3030
9999 | 9997
Rules
- Input and output are integers (your program should at least support input and output in the range of 1 up to 32767)
- Invalid input (0, floats, strings, negative values, etc.) may lead to unpredicted output, errors or (un)defined behaviour. In A163252, $a(0)$ is defined as 0. For this challenge, we will ignore this.
- Default I/O rules apply.
Default loopholes are forbidden.- This is code-golf, so the shortest answers in bytes wins
Final note
See the following related (but not equal) PP&CG questions:
- Finding the next Gray code (input and output in binary)
- Generate the all Gray codes of length n
code-golf sequence
$endgroup$
add a comment |
$begingroup$
Introduction (may be ignored)
Putting all positive numbers in its regular order (1, 2, 3, ...) is a bit boring, isn't it? So here is a series of challenges around permutations (reshuffelings) of all positive numbers. This is the second challenge in this series. The first challenge can be found here.
In this challenge, we use Gray codes to rearrage the natural numbers. A Gray code, or "reflected binary code" is a binary encoding in such a way that two successive values differ in only one bit. A practical application of this encoding is to use it in rotary encoders, hence my reference to "Turn My Way".
Note that this encoding leaves some degree of freedom. For example, following binary 1100, there are four possible following codes: 1101, 1110, 1000 and 0100. This is why I will define $a(n)$ as the smallest, not previously used value that differs only one character in binary encoding. This sequence corresponds with A163252.
Since this is a "pure sequence" challenge, the task is to output $a(n)$ for a given $n$ as input, where $a(n)$ is A163252.
Task
Given an integer input $n$, output $a(n)$ in integer format (not in binary format).
$a(n)$ is defined as the least positive integer not occurring earlier in the sequence such that $a(n-1)$ and $a(n)$ differ in only one bit when written in binary.
Note: 1-based indexing is assumed here; you may use 0-based indexing, so $a(0) = 1; a(1) = 3$, etc. Please mention this in your answer if you choose to use this.
Test cases
Input | Output
--------------
1 | 1
5 | 4
20 | 18
50 | 48
123 | 121
1234 | 1333
3000 | 3030
9999 | 9997
Rules
- Input and output are integers (your program should at least support input and output in the range of 1 up to 32767)
- Invalid input (0, floats, strings, negative values, etc.) may lead to unpredicted output, errors or (un)defined behaviour. In A163252, $a(0)$ is defined as 0. For this challenge, we will ignore this.
- Default I/O rules apply.
Default loopholes are forbidden.- This is code-golf, so the shortest answers in bytes wins
Final note
See the following related (but not equal) PP&CG questions:
- Finding the next Gray code (input and output in binary)
- Generate the all Gray codes of length n
code-golf sequence
$endgroup$
add a comment |
$begingroup$
Introduction (may be ignored)
Putting all positive numbers in its regular order (1, 2, 3, ...) is a bit boring, isn't it? So here is a series of challenges around permutations (reshuffelings) of all positive numbers. This is the second challenge in this series. The first challenge can be found here.
In this challenge, we use Gray codes to rearrage the natural numbers. A Gray code, or "reflected binary code" is a binary encoding in such a way that two successive values differ in only one bit. A practical application of this encoding is to use it in rotary encoders, hence my reference to "Turn My Way".
Note that this encoding leaves some degree of freedom. For example, following binary 1100, there are four possible following codes: 1101, 1110, 1000 and 0100. This is why I will define $a(n)$ as the smallest, not previously used value that differs only one character in binary encoding. This sequence corresponds with A163252.
Since this is a "pure sequence" challenge, the task is to output $a(n)$ for a given $n$ as input, where $a(n)$ is A163252.
Task
Given an integer input $n$, output $a(n)$ in integer format (not in binary format).
$a(n)$ is defined as the least positive integer not occurring earlier in the sequence such that $a(n-1)$ and $a(n)$ differ in only one bit when written in binary.
Note: 1-based indexing is assumed here; you may use 0-based indexing, so $a(0) = 1; a(1) = 3$, etc. Please mention this in your answer if you choose to use this.
Test cases
Input | Output
--------------
1 | 1
5 | 4
20 | 18
50 | 48
123 | 121
1234 | 1333
3000 | 3030
9999 | 9997
Rules
- Input and output are integers (your program should at least support input and output in the range of 1 up to 32767)
- Invalid input (0, floats, strings, negative values, etc.) may lead to unpredicted output, errors or (un)defined behaviour. In A163252, $a(0)$ is defined as 0. For this challenge, we will ignore this.
- Default I/O rules apply.
Default loopholes are forbidden.- This is code-golf, so the shortest answers in bytes wins
Final note
See the following related (but not equal) PP&CG questions:
- Finding the next Gray code (input and output in binary)
- Generate the all Gray codes of length n
code-golf sequence
$endgroup$
Introduction (may be ignored)
Putting all positive numbers in its regular order (1, 2, 3, ...) is a bit boring, isn't it? So here is a series of challenges around permutations (reshuffelings) of all positive numbers. This is the second challenge in this series. The first challenge can be found here.
In this challenge, we use Gray codes to rearrage the natural numbers. A Gray code, or "reflected binary code" is a binary encoding in such a way that two successive values differ in only one bit. A practical application of this encoding is to use it in rotary encoders, hence my reference to "Turn My Way".
Note that this encoding leaves some degree of freedom. For example, following binary 1100, there are four possible following codes: 1101, 1110, 1000 and 0100. This is why I will define $a(n)$ as the smallest, not previously used value that differs only one character in binary encoding. This sequence corresponds with A163252.
Since this is a "pure sequence" challenge, the task is to output $a(n)$ for a given $n$ as input, where $a(n)$ is A163252.
Task
Given an integer input $n$, output $a(n)$ in integer format (not in binary format).
$a(n)$ is defined as the least positive integer not occurring earlier in the sequence such that $a(n-1)$ and $a(n)$ differ in only one bit when written in binary.
Note: 1-based indexing is assumed here; you may use 0-based indexing, so $a(0) = 1; a(1) = 3$, etc. Please mention this in your answer if you choose to use this.
Test cases
Input | Output
--------------
1 | 1
5 | 4
20 | 18
50 | 48
123 | 121
1234 | 1333
3000 | 3030
9999 | 9997
Rules
- Input and output are integers (your program should at least support input and output in the range of 1 up to 32767)
- Invalid input (0, floats, strings, negative values, etc.) may lead to unpredicted output, errors or (un)defined behaviour. In A163252, $a(0)$ is defined as 0. For this challenge, we will ignore this.
- Default I/O rules apply.
Default loopholes are forbidden.- This is code-golf, so the shortest answers in bytes wins
Final note
See the following related (but not equal) PP&CG questions:
- Finding the next Gray code (input and output in binary)
- Generate the all Gray codes of length n
code-golf sequence
code-golf sequence
asked 6 hours ago
agtoeveragtoever
1,113419
1,113419
add a comment |
add a comment |
5 Answers
5
active
oldest
votes
$begingroup$
Jelly, 26 22 bytes
ṀBL‘Ḷ2*^0ị$ḟ⁸Ṃ
0;Ç$⁸¡Ṫ
Try it online!
A full program that takes n as the single argument. Works for all test cases. Also note that, although not required, it handles n=0.
Explanation
Helper link: find next term
Ṁ | maximum of list so far
B | convert to binary
L | number of binary digits
‘ | increase by one
Ḷ | lowered range (0..above number)
2* | 2 to the power of each of the above
^ | exclusive or with...
0ị$ | ... the last term in the list so far
ḟ⁸ | filter out anything used already
Ṃ | find the minimum
Main link
0 | start with zero
;Ç$ | append the result of the above link
⁸¡ | and repeat n times
Ṫ | take the last term
$endgroup$
add a comment |
$begingroup$
JavaScript (ES6), 65 bytes
1-indexed.
n=>for(o=p=[k=1];o[k]
Try it online!
Commented
n => // if k was already encountered
~-(i = p ^ k) & i ? // or (p XOR k) has more than 1 bit set:
k++ // increment k
: // else:
k = o[p = k] // set o[k], set p to k
= !!n--; // stop if n is equal to 0 or set k to 1; decrement n
); // end of for()
return p // return p
// end
$endgroup$
$begingroup$
On TIO, I get a stack overflow for n > ~1024. Any suggestions on how tot deal with that in Abu other environment? Rule: "your program should at least support input and output in theorie range of 1 up tot 32767"
$endgroup$
– agtoever
1 hour ago
1
$begingroup$
@agtoever I've updated it to a non-recursive version.
$endgroup$
– Arnauld
1 hour ago
add a comment |
$begingroup$
Wolfram Language (Mathematica), 74 bytes
Last@Nest[#~Join~Min[BitXor[Last@#,2^Range[0,20]]~Complement~#]&,0,#]&
Try it online!
$endgroup$
add a comment |
$begingroup$
Python 3.8 (pre-release), 85 bytes
1-based indexing, really inefficient
a=lambda n,x=0:((w:=x^(n and a(n-1)))&w-1or x in[a(i)for i in range(n)])and-~a(n,x+1)
Try it online!
$endgroup$
$begingroup$
Maximum input 32767 isn't supported (the default recursion depth isn't system-dependent).
$endgroup$
– Erik the Outgolfer
49 mins ago
add a comment |
$begingroup$
APL (Dyalog Extended), 46 bytes
⍵⌷2∘(~⍺∊⍵)∧1=≢⍸≠⌿↑⌽∘⊤¨⍺,⊃⌽⍵:⍵,⍺⋄⍵∇⍨⍺+1⍣⍵⊢1
Try it online!
$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%2f181825%2fnew-order-2-turn-my-way%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
5 Answers
5
active
oldest
votes
5 Answers
5
active
oldest
votes
active
oldest
votes
active
oldest
votes
$begingroup$
Jelly, 26 22 bytes
ṀBL‘Ḷ2*^0ị$ḟ⁸Ṃ
0;Ç$⁸¡Ṫ
Try it online!
A full program that takes n as the single argument. Works for all test cases. Also note that, although not required, it handles n=0.
Explanation
Helper link: find next term
Ṁ | maximum of list so far
B | convert to binary
L | number of binary digits
‘ | increase by one
Ḷ | lowered range (0..above number)
2* | 2 to the power of each of the above
^ | exclusive or with...
0ị$ | ... the last term in the list so far
ḟ⁸ | filter out anything used already
Ṃ | find the minimum
Main link
0 | start with zero
;Ç$ | append the result of the above link
⁸¡ | and repeat n times
Ṫ | take the last term
$endgroup$
add a comment |
$begingroup$
Jelly, 26 22 bytes
ṀBL‘Ḷ2*^0ị$ḟ⁸Ṃ
0;Ç$⁸¡Ṫ
Try it online!
A full program that takes n as the single argument. Works for all test cases. Also note that, although not required, it handles n=0.
Explanation
Helper link: find next term
Ṁ | maximum of list so far
B | convert to binary
L | number of binary digits
‘ | increase by one
Ḷ | lowered range (0..above number)
2* | 2 to the power of each of the above
^ | exclusive or with...
0ị$ | ... the last term in the list so far
ḟ⁸ | filter out anything used already
Ṃ | find the minimum
Main link
0 | start with zero
;Ç$ | append the result of the above link
⁸¡ | and repeat n times
Ṫ | take the last term
$endgroup$
add a comment |
$begingroup$
Jelly, 26 22 bytes
ṀBL‘Ḷ2*^0ị$ḟ⁸Ṃ
0;Ç$⁸¡Ṫ
Try it online!
A full program that takes n as the single argument. Works for all test cases. Also note that, although not required, it handles n=0.
Explanation
Helper link: find next term
Ṁ | maximum of list so far
B | convert to binary
L | number of binary digits
‘ | increase by one
Ḷ | lowered range (0..above number)
2* | 2 to the power of each of the above
^ | exclusive or with...
0ị$ | ... the last term in the list so far
ḟ⁸ | filter out anything used already
Ṃ | find the minimum
Main link
0 | start with zero
;Ç$ | append the result of the above link
⁸¡ | and repeat n times
Ṫ | take the last term
$endgroup$
Jelly, 26 22 bytes
ṀBL‘Ḷ2*^0ị$ḟ⁸Ṃ
0;Ç$⁸¡Ṫ
Try it online!
A full program that takes n as the single argument. Works for all test cases. Also note that, although not required, it handles n=0.
Explanation
Helper link: find next term
Ṁ | maximum of list so far
B | convert to binary
L | number of binary digits
‘ | increase by one
Ḷ | lowered range (0..above number)
2* | 2 to the power of each of the above
^ | exclusive or with...
0ị$ | ... the last term in the list so far
ḟ⁸ | filter out anything used already
Ṃ | find the minimum
Main link
0 | start with zero
;Ç$ | append the result of the above link
⁸¡ | and repeat n times
Ṫ | take the last term
edited 50 mins ago
answered 2 hours ago
Nick KennedyNick Kennedy
79137
79137
add a comment |
add a comment |
$begingroup$
JavaScript (ES6), 65 bytes
1-indexed.
n=>for(o=p=[k=1];o[k]
Try it online!
Commented
n => // if k was already encountered
~-(i = p ^ k) & i ? // or (p XOR k) has more than 1 bit set:
k++ // increment k
: // else:
k = o[p = k] // set o[k], set p to k
= !!n--; // stop if n is equal to 0 or set k to 1; decrement n
); // end of for()
return p // return p
// end
$endgroup$
$begingroup$
On TIO, I get a stack overflow for n > ~1024. Any suggestions on how tot deal with that in Abu other environment? Rule: "your program should at least support input and output in theorie range of 1 up tot 32767"
$endgroup$
– agtoever
1 hour ago
1
$begingroup$
@agtoever I've updated it to a non-recursive version.
$endgroup$
– Arnauld
1 hour ago
add a comment |
$begingroup$
JavaScript (ES6), 65 bytes
1-indexed.
n=>for(o=p=[k=1];o[k]
Try it online!
Commented
n => // if k was already encountered
~-(i = p ^ k) & i ? // or (p XOR k) has more than 1 bit set:
k++ // increment k
: // else:
k = o[p = k] // set o[k], set p to k
= !!n--; // stop if n is equal to 0 or set k to 1; decrement n
); // end of for()
return p // return p
// end
$endgroup$
$begingroup$
On TIO, I get a stack overflow for n > ~1024. Any suggestions on how tot deal with that in Abu other environment? Rule: "your program should at least support input and output in theorie range of 1 up tot 32767"
$endgroup$
– agtoever
1 hour ago
1
$begingroup$
@agtoever I've updated it to a non-recursive version.
$endgroup$
– Arnauld
1 hour ago
add a comment |
$begingroup$
JavaScript (ES6), 65 bytes
1-indexed.
n=>for(o=p=[k=1];o[k]
Try it online!
Commented
n => // if k was already encountered
~-(i = p ^ k) & i ? // or (p XOR k) has more than 1 bit set:
k++ // increment k
: // else:
k = o[p = k] // set o[k], set p to k
= !!n--; // stop if n is equal to 0 or set k to 1; decrement n
); // end of for()
return p // return p
// end
$endgroup$
JavaScript (ES6), 65 bytes
1-indexed.
n=>for(o=p=[k=1];o[k]
Try it online!
Commented
n => // if k was already encountered
~-(i = p ^ k) & i ? // or (p XOR k) has more than 1 bit set:
k++ // increment k
: // else:
k = o[p = k] // set o[k], set p to k
= !!n--; // stop if n is equal to 0 or set k to 1; decrement n
); // end of for()
return p // return p
// end
edited 50 mins ago
answered 4 hours ago
ArnauldArnauld
79.2k796329
79.2k796329
$begingroup$
On TIO, I get a stack overflow for n > ~1024. Any suggestions on how tot deal with that in Abu other environment? Rule: "your program should at least support input and output in theorie range of 1 up tot 32767"
$endgroup$
– agtoever
1 hour ago
1
$begingroup$
@agtoever I've updated it to a non-recursive version.
$endgroup$
– Arnauld
1 hour ago
add a comment |
$begingroup$
On TIO, I get a stack overflow for n > ~1024. Any suggestions on how tot deal with that in Abu other environment? Rule: "your program should at least support input and output in theorie range of 1 up tot 32767"
$endgroup$
– agtoever
1 hour ago
1
$begingroup$
@agtoever I've updated it to a non-recursive version.
$endgroup$
– Arnauld
1 hour ago
$begingroup$
On TIO, I get a stack overflow for n > ~1024. Any suggestions on how tot deal with that in Abu other environment? Rule: "your program should at least support input and output in theorie range of 1 up tot 32767"
$endgroup$
– agtoever
1 hour ago
$begingroup$
On TIO, I get a stack overflow for n > ~1024. Any suggestions on how tot deal with that in Abu other environment? Rule: "your program should at least support input and output in theorie range of 1 up tot 32767"
$endgroup$
– agtoever
1 hour ago
1
1
$begingroup$
@agtoever I've updated it to a non-recursive version.
$endgroup$
– Arnauld
1 hour ago
$begingroup$
@agtoever I've updated it to a non-recursive version.
$endgroup$
– Arnauld
1 hour ago
add a comment |
$begingroup$
Wolfram Language (Mathematica), 74 bytes
Last@Nest[#~Join~Min[BitXor[Last@#,2^Range[0,20]]~Complement~#]&,0,#]&
Try it online!
$endgroup$
add a comment |
$begingroup$
Wolfram Language (Mathematica), 74 bytes
Last@Nest[#~Join~Min[BitXor[Last@#,2^Range[0,20]]~Complement~#]&,0,#]&
Try it online!
$endgroup$
add a comment |
$begingroup$
Wolfram Language (Mathematica), 74 bytes
Last@Nest[#~Join~Min[BitXor[Last@#,2^Range[0,20]]~Complement~#]&,0,#]&
Try it online!
$endgroup$
Wolfram Language (Mathematica), 74 bytes
Last@Nest[#~Join~Min[BitXor[Last@#,2^Range[0,20]]~Complement~#]&,0,#]&
Try it online!
answered 1 hour ago
J42161217J42161217
13.3k21251
13.3k21251
add a comment |
add a comment |
$begingroup$
Python 3.8 (pre-release), 85 bytes
1-based indexing, really inefficient
a=lambda n,x=0:((w:=x^(n and a(n-1)))&w-1or x in[a(i)for i in range(n)])and-~a(n,x+1)
Try it online!
$endgroup$
$begingroup$
Maximum input 32767 isn't supported (the default recursion depth isn't system-dependent).
$endgroup$
– Erik the Outgolfer
49 mins ago
add a comment |
$begingroup$
Python 3.8 (pre-release), 85 bytes
1-based indexing, really inefficient
a=lambda n,x=0:((w:=x^(n and a(n-1)))&w-1or x in[a(i)for i in range(n)])and-~a(n,x+1)
Try it online!
$endgroup$
$begingroup$
Maximum input 32767 isn't supported (the default recursion depth isn't system-dependent).
$endgroup$
– Erik the Outgolfer
49 mins ago
add a comment |
$begingroup$
Python 3.8 (pre-release), 85 bytes
1-based indexing, really inefficient
a=lambda n,x=0:((w:=x^(n and a(n-1)))&w-1or x in[a(i)for i in range(n)])and-~a(n,x+1)
Try it online!
$endgroup$
Python 3.8 (pre-release), 85 bytes
1-based indexing, really inefficient
a=lambda n,x=0:((w:=x^(n and a(n-1)))&w-1or x in[a(i)for i in range(n)])and-~a(n,x+1)
Try it online!
answered 2 hours ago
ovsovs
19.3k21160
19.3k21160
$begingroup$
Maximum input 32767 isn't supported (the default recursion depth isn't system-dependent).
$endgroup$
– Erik the Outgolfer
49 mins ago
add a comment |
$begingroup$
Maximum input 32767 isn't supported (the default recursion depth isn't system-dependent).
$endgroup$
– Erik the Outgolfer
49 mins ago
$begingroup$
Maximum input 32767 isn't supported (the default recursion depth isn't system-dependent).
$endgroup$
– Erik the Outgolfer
49 mins ago
$begingroup$
Maximum input 32767 isn't supported (the default recursion depth isn't system-dependent).
$endgroup$
– Erik the Outgolfer
49 mins ago
add a comment |
$begingroup$
APL (Dyalog Extended), 46 bytes
⍵⌷2∘(~⍺∊⍵)∧1=≢⍸≠⌿↑⌽∘⊤¨⍺,⊃⌽⍵:⍵,⍺⋄⍵∇⍨⍺+1⍣⍵⊢1
Try it online!
$endgroup$
add a comment |
$begingroup$
APL (Dyalog Extended), 46 bytes
⍵⌷2∘(~⍺∊⍵)∧1=≢⍸≠⌿↑⌽∘⊤¨⍺,⊃⌽⍵:⍵,⍺⋄⍵∇⍨⍺+1⍣⍵⊢1
Try it online!
$endgroup$
add a comment |
$begingroup$
APL (Dyalog Extended), 46 bytes
⍵⌷2∘(~⍺∊⍵)∧1=≢⍸≠⌿↑⌽∘⊤¨⍺,⊃⌽⍵:⍵,⍺⋄⍵∇⍨⍺+1⍣⍵⊢1
Try it online!
$endgroup$
APL (Dyalog Extended), 46 bytes
⍵⌷2∘(~⍺∊⍵)∧1=≢⍸≠⌿↑⌽∘⊤¨⍺,⊃⌽⍵:⍵,⍺⋄⍵∇⍨⍺+1⍣⍵⊢1
Try it online!
answered 1 min ago
voidhawkvoidhawk
1,31115
1,31115
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%2f181825%2fnew-order-2-turn-my-way%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