2018-10-10 18:03:03 -04:00
---
id: 5900f4531000cf542c50ff65
2021-02-06 04:42:36 +00:00
title: 'Problem 230: Fibonacci Words'
2018-10-10 18:03:03 -04:00
challengeType: 5
2021-02-06 04:42:36 +00:00
forumTopicId: 301874
2021-01-13 03:31:00 +01:00
dashedName: problem-230-fibonacci-words
2018-10-10 18:03:03 -04:00
---
2020-12-16 00:37:30 -07:00
# --description--
2018-10-10 18:03:03 -04:00
2021-02-06 04:42:36 +00:00
For any two strings of digits, A and B, we define FA,B to be the sequence (A,B,AB,BAB,ABBAB,...) in which each term is the concatenation of the previous two.
2018-10-10 18:03:03 -04:00
2021-02-06 04:42:36 +00:00
Further, we define DA,B(n) to be the nth digit in the first term of FA,B that contains at least n digits.
2018-10-10 18:03:03 -04:00
2021-02-06 04:42:36 +00:00
Example:
2018-10-10 18:03:03 -04:00
2021-02-06 04:42:36 +00:00
Let A=1415926535, B=8979323846. We wish to find DA,B(35), say.
2018-10-10 18:03:03 -04:00
2021-02-06 04:42:36 +00:00
The first few terms of FA,B are: 1415926535 8979323846 14159265358979323846 897932384614159265358979323846 14159265358979323846897932384614159265358979323846
2018-10-10 18:03:03 -04:00
2021-02-06 04:42:36 +00:00
Then DA,B(35) is the 35th digit in the fifth term, which is 9.
2018-10-10 18:03:03 -04:00
2021-02-06 04:42:36 +00:00
Now we use for A the first 100 digits of π behind the decimal point: 14159265358979323846264338327950288419716939937510 58209749445923078164062862089986280348253421170679
2018-10-10 18:03:03 -04:00
2021-02-06 04:42:36 +00:00
and for B the next hundred digits:
2018-10-10 18:03:03 -04:00
2021-02-06 04:42:36 +00:00
82148086513282306647093844609550582231725359408128 48111745028410270193852110555964462294895493038196 .
2018-10-10 18:03:03 -04:00
2021-02-06 04:42:36 +00:00
Find ∑n = 0,1,...,17 10n× DA,B((127+19n)× 7n) .
2018-10-10 18:03:03 -04:00
2020-12-16 00:37:30 -07:00
# --hints--
2018-10-10 18:03:03 -04:00
2021-02-06 04:42:36 +00:00
`euler230()` should return 850481152593119200.
2018-10-10 18:03:03 -04:00
```js
2020-12-16 00:37:30 -07:00
assert.strictEqual(euler230(), 850481152593119200);
2018-10-10 18:03:03 -04:00
```
2020-08-13 17:24:35 +02:00
2021-01-13 03:31:00 +01:00
# --seed--
## --seed-contents--
```js
function euler230() {
return true;
}
euler230();
```
2020-12-16 00:37:30 -07:00
# --solutions--
2021-01-13 03:31:00 +01:00
```js
// solution required
```