fix(curriculum): clean-up Project Euler 261-280 (#42905)

* fix: clean-up Project Euler 261-280

* fix: typo

* fix: typo

* fix: typo
This commit is contained in:
gikf
2021-07-24 09:09:54 +02:00
committed by GitHub
parent f4dc81bce3
commit f93acf28a6
20 changed files with 219 additions and 162 deletions

View File

@ -8,24 +8,29 @@ dashedName: problem-265-binary-circles
# --description--
2N binary digits can be placed in a circle so that all the N-digit clockwise subsequences are distinct.
$2^N$ binary digits can be placed in a circle so that all the $N$-digit clockwise subsequences are distinct.
For N=3, two such circular arrangements are possible, ignoring rotations:
For $N = 3$, two such circular arrangements are possible, ignoring rotations:
<img class="img-responsive center-block" alt="two circular arrangements for N = 3" src="https://cdn.freecodecamp.org/curriculum/project-euler/binary-circles.gif" style="background-color: white; padding: 10px;">
For the first arrangement, the 3-digit subsequences, in clockwise order, are: 000, 001, 010, 101, 011, 111, 110 and 100.
Each circular arrangement can be encoded as a number by concatenating the binary digits starting with the subsequence of all zeros as the most significant bits and proceeding clockwise. The two arrangements for N=3 are thus represented as 23 and 29: 00010111 2 = 23 00011101 2 = 29
Each circular arrangement can be encoded as a number by concatenating the binary digits starting with the subsequence of all zeros as the most significant bits and proceeding clockwise. The two arrangements for $N = 3$ are thus represented as 23 and 29:
Calling S(N) the sum of the unique numeric representations, we can see that S(3) = 23 + 29 = 52.
$${00010111}_2 = 23\\\\
{00011101}_2 = 29$$
Find S(5).
Calling $S(N)$ the sum of the unique numeric representations, we can see that $S(3) = 23 + 29 = 52$.
Find $S(5)$.
# --hints--
`euler265()` should return 209110240768.
`binaryCircles()` should return `209110240768`.
```js
assert.strictEqual(euler265(), 209110240768);
assert.strictEqual(binaryCircles(), 209110240768);
```
# --seed--
@ -33,12 +38,12 @@ assert.strictEqual(euler265(), 209110240768);
## --seed-contents--
```js
function euler265() {
function binaryCircles() {
return true;
}
euler265();
binaryCircles();
```
# --solutions--