2018-10-10 18:03:03 -04:00
---
id: 5900f4231000cf542c50ff36
2021-02-06 04:42:36 +00:00
title: 'Problem 183: Maximum product of parts'
2018-10-10 18:03:03 -04:00
challengeType: 5
2021-02-06 04:42:36 +00:00
forumTopicId: 301819
2021-01-13 03:31:00 +01:00
dashedName: problem-183-maximum-product-of-parts
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
Let N be a positive integer and let N be split into k equal parts, r = N/k, so that N = r + r + ... + r.
2018-10-10 18:03:03 -04:00
2021-02-06 04:42:36 +00:00
Let P be the product of these parts, P = r × r × ... × r = rk.
2018-10-10 18:03:03 -04:00
2021-02-06 04:42:36 +00:00
For example, if 11 is split into five equal parts, 11 = 2.2 + 2.2 + 2.2 + 2.2 + 2.2, then P = 2.25 = 51.53632.
2018-10-10 18:03:03 -04:00
2021-02-06 04:42:36 +00:00
Let M(N) = Pmax for a given value of N.
2018-10-10 18:03:03 -04:00
2021-02-06 04:42:36 +00:00
It turns out that the maximum for N = 11 is found by splitting eleven into four equal parts which leads to Pmax = (11/4)4; that is, M(11) = 14641/256 = 57.19140625, which is a terminating decimal.
2018-10-10 18:03:03 -04:00
2021-02-06 04:42:36 +00:00
However, for N = 8 the maximum is achieved by splitting it into three equal parts, so M(8) = 512/27, which is a non-terminating decimal.
2018-10-10 18:03:03 -04:00
2021-02-06 04:42:36 +00:00
Let D(N) = N if M(N) is a non-terminating decimal and D(N) = -N if M(N) is a terminating decimal.
2018-10-10 18:03:03 -04:00
2021-02-06 04:42:36 +00:00
For example, ΣD(N) for 5 ≤ N ≤ 100 is 2438.
Find ΣD(N) for 5 ≤ N ≤ 10000.
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
`euler183()` should return 48861552.
2018-10-10 18:03:03 -04:00
```js
2020-12-16 00:37:30 -07:00
assert.strictEqual(euler183(), 48861552);
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 euler183() {
return true;
}
euler183();
```
2020-12-16 00:37:30 -07:00
# --solutions--
2021-01-13 03:31:00 +01:00
```js
// solution required
```