Files
freeCodeCamp/curriculum/challenges/japanese/10-coding-interview-prep/project-euler/problem-167-investigating-ulam-sequences.md
2022-01-20 20:30:18 +01:00

47 lines
1.2 KiB
Markdown

---
id: 5900f4141000cf542c50ff26
title: '問題 167: ウラム数列を調べ上げる'
challengeType: 5
forumTopicId: 301801
dashedName: problem-167-investigating-ulam-sequences
---
# --description--
正の整数 $a$ と $b$ について、ウラム数列 $U (a,b)$ は ${U{(a,b)}\_1} = a$, ${U{(a,b)}\_2} = b$ と定義されます。$k > 2$ のとき、${U{(a,b)}\_k}$ は、$U(a,b)$ の相異なる前の 2 つの要素の値の和としてちょうど 1 通りで表せるような、${U{(a,b)}\_{(k-1)}}$ より大きい最小の整数です。
例えば、数列 $U(1,2)$ は次のように始まります。
$$1, 2, 3 = 1 + 2, 4 = 1 + 3, 6 = 2 + 4, 8 = 2 + 6, 11 = 3 + 8$$
5 はこれに含まれません。$5 = 1 + 4 = 2 + 3$ であり、前の 2 つの要素の和として 2 通りで表せるからです。$7 = 1 + 6 = 3 + 4$ も同じことです。
$2 ≤ n ≤ 10$, $k = {10}^{11} のとき、$\sum {U(2, 2n + 1)_k}$ を求めなさい。
# --hints--
`ulamSequences()``3916160068885` を返す必要があります。
```js
assert.strictEqual(ulamSequences(), 3916160068885);
```
# --seed--
## --seed-contents--
```js
function ulamSequences() {
return true;
}
ulamSequences();
```
# --solutions--
```js
// solution required
```