2022-01-21 01:00:18 +05:30
|
|
|
---
|
|
|
|
id: 5900f4b91000cf542c50ffcc
|
2022-01-22 20:38:20 +05:30
|
|
|
title: '問題 333: 特殊な分割'
|
2022-01-21 01:00:18 +05:30
|
|
|
challengeType: 5
|
|
|
|
forumTopicId: 301991
|
|
|
|
dashedName: problem-333-special-partitions
|
|
|
|
---
|
|
|
|
|
|
|
|
# --description--
|
|
|
|
|
2022-01-22 20:38:20 +05:30
|
|
|
すべての正の整数は、すべての項を $2^i \times 3^j$ (ここで $i, j ≥ 0$) で表せるような形で分割することができます。
|
2022-01-21 01:00:18 +05:30
|
|
|
|
2022-01-22 20:38:20 +05:30
|
|
|
他の項の約数である項が一つもないような分割のみを考えます。 例えば、$17 = 2 + 6 + 9 = (2^1 \times 3^0 + 2^1 \times 3^1 + 2^0 \times 3^2)$ は、2 が 6 を割り切るので有効ではありません。 分割 $17 = 16 + 1 = (2^4 \times 3^0 + 2^0 \times 3^0)$ も、1 が 16 を割り切るので有効ではありません。 17 の場合、唯一の有効な分割は $8 + 9 = (2^3 \times 3^0 + 2^0 \times 3^2)$ です。
|
2022-01-21 01:00:18 +05:30
|
|
|
|
2022-01-22 20:38:20 +05:30
|
|
|
多くの整数には有効な分割が複数個あります。そのような最初の数は 11 であり、次の 2 つの分割があります。
|
2022-01-21 01:00:18 +05:30
|
|
|
|
2022-04-02 14:16:30 +05:30
|
|
|
$$\begin{align} & 11 = 2 + 9 = (2^1 \times 3^0 + 2^0 \times 3^2) \\\\
|
|
|
|
& 11 = 8 + 3 = (2^3 \times 3^0 + 2^0 \times 3^1) \end{align}$$
|
2022-01-21 01:00:18 +05:30
|
|
|
|
2022-01-22 20:38:20 +05:30
|
|
|
$n$ の有効な分割の数を $P(n)$ とします。 例えば、$P(11) = 2$ です。
|
2022-01-21 01:00:18 +05:30
|
|
|
|
2022-01-22 20:38:20 +05:30
|
|
|
$P(17)$ のような、有効な分割を 1 つ持つ素数の整数 $q$ のみについて考えます。
|
2022-01-21 01:00:18 +05:30
|
|
|
|
2022-01-22 20:38:20 +05:30
|
|
|
$P(q) = 1$ となる $q <100$ の和は 233 です。
|
2022-01-21 01:00:18 +05:30
|
|
|
|
2022-01-22 20:38:20 +05:30
|
|
|
$P(q) = 1$ となる素数 $q < 1\\,000\\,000$ の和を求めなさい。
|
2022-01-21 01:00:18 +05:30
|
|
|
|
|
|
|
# --hints--
|
|
|
|
|
2022-01-22 20:38:20 +05:30
|
|
|
`specialPartitions()` は `3053105` を返す必要があります。
|
2022-01-21 01:00:18 +05:30
|
|
|
|
|
|
|
```js
|
|
|
|
assert.strictEqual(specialPartitions(), 3053105);
|
|
|
|
```
|
|
|
|
|
|
|
|
# --seed--
|
|
|
|
|
|
|
|
## --seed-contents--
|
|
|
|
|
|
|
|
```js
|
|
|
|
function specialPartitions() {
|
|
|
|
|
|
|
|
return true;
|
|
|
|
}
|
|
|
|
|
|
|
|
specialPartitions();
|
|
|
|
```
|
|
|
|
|
|
|
|
# --solutions--
|
|
|
|
|
|
|
|
```js
|
|
|
|
// solution required
|
|
|
|
```
|