---
id: 5900f4691000cf542c50ff7b
title: 'Завдання 252: Опуклі отвори'
challengeType: 5
forumTopicId: 301900
dashedName: problem-252-convex-holes
---

# --description--

Дано набір точок на площині. Визначаємо, що опуклий отвір — це опуклий багатокутник, який має вершини у будь-якій з даних точок та не містить жодної з даних точок всередині (крім вершин, інші дані точки можуть лежати по периметру багатокутника).

Наприклад, на зображення нижче маємо набір 20 точок та декількох таких опуклих отворів. Опуклий отвір позначено червоним семикутником із площею 1049694.5 квадратних одиниць, що є найбільшою можливою площею опуклого отвору при даному наборі точок.

<img class="img-responsive center-block" alt="набір 20 точок та опуклих отворів на площині" src="https://cdn.freecodecamp.org/curriculum/project-euler/convex-holes.gif" style="background-color: white; padding: 10px;" />

Наприклад, ми використали перші 20 точок ($T_{2k − 1}$, $T_{2k}$), для $k = 1, 2, \ldots, 20$, отриманих за допомогою генератора псевдовипадкових чисел:

$$\begin{align} S_0 & = 290\\,797 \\\\ S_{n+1} & = {S_n}^2 \\; \text{mod} \\; 50\\,515\\,093 \\\\ T_n & = (S_n \\; \text{mod} \\; 2000) − 1000 \end{align}$$

тобто (527, 144), (−488, 732), (−454, −947), …

Якою є максимальна площа опуклого отвору у наборі, що містить перші 500 точок у псевдовипадковій послідовності? Округліть відповідь до 1 цифри після коми.

# --hints--

`convexHoles()` має повернути `104924`.

```js
assert.strictEqual(convexHoles(), 104924);
```

# --seed--

## --seed-contents--

```js
function convexHoles() {

  return true;
}

convexHoles();
```

# --solutions--

```js
// solution required
```
