2022-01-20 19:30:18 +00:00
|
|
|
---
|
|
|
|
id: 5900f4ea1000cf542c50fffc
|
2022-01-22 15:08:20 +00:00
|
|
|
title: '問題 381: (素数-k) 階乗'
|
2022-01-20 19:30:18 +00:00
|
|
|
challengeType: 5
|
|
|
|
forumTopicId: 302045
|
|
|
|
dashedName: problem-381-prime-k-factorial
|
|
|
|
---
|
|
|
|
|
|
|
|
# --description--
|
|
|
|
|
2022-01-22 15:08:20 +00:00
|
|
|
素数 $p$ について、$1 ≤ k ≤ 5$ のとき $S(p) = (\sum (p - k)!)\bmod (p)$ が成り立つとします。
|
2022-01-20 19:30:18 +00:00
|
|
|
|
2022-01-22 15:08:20 +00:00
|
|
|
例えば、$p = 7$ のとき、次の式が成り立ちます。
|
2022-01-20 19:30:18 +00:00
|
|
|
|
|
|
|
$$(7 - 1)! + (7 - 2)! + (7 - 3)! + (7 - 4)! + (7 - 5)! = 6! + 5! + 4! + 3! + 2! = 720 + 120 + 24 + 6 + 2 = 872$$
|
|
|
|
|
2022-01-22 15:08:20 +00:00
|
|
|
$872\bmod (7) = 4$ なので $S(7) = 4$ となります。
|
2022-01-20 19:30:18 +00:00
|
|
|
|
2022-01-22 15:08:20 +00:00
|
|
|
$5 ≤ p < 100$ のとき、$\sum S(p) = 480$ となることを確認できます。
|
2022-01-20 19:30:18 +00:00
|
|
|
|
2022-01-22 15:08:20 +00:00
|
|
|
$5 ≤ p < {10}^8$ のとき、$\sum S(p)$ を求めなさい。
|
2022-01-20 19:30:18 +00:00
|
|
|
|
|
|
|
# --hints--
|
|
|
|
|
2022-01-22 15:08:20 +00:00
|
|
|
`primeKFactorial()` は`139602943319822` を返す必要があります。
|
2022-01-20 19:30:18 +00:00
|
|
|
|
|
|
|
```js
|
|
|
|
assert.strictEqual(primeKFactorial(), 139602943319822);
|
|
|
|
```
|
|
|
|
|
|
|
|
# --seed--
|
|
|
|
|
|
|
|
## --seed-contents--
|
|
|
|
|
|
|
|
```js
|
|
|
|
function primeKFactorial() {
|
|
|
|
|
|
|
|
return true;
|
|
|
|
}
|
|
|
|
|
|
|
|
primeKFactorial();
|
|
|
|
```
|
|
|
|
|
|
|
|
# --solutions--
|
|
|
|
|
|
|
|
```js
|
|
|
|
// solution required
|
|
|
|
```
|