56 lines
2.8 KiB
Markdown
56 lines
2.8 KiB
Markdown
---
|
||
id: 5900f53d1000cf542c510050
|
||
challengeType: 5
|
||
title: 'Problem 465: Polar polygons'
|
||
videoUrl: ''
|
||
localeTitle: 'Задача 465: Полярные полигоны'
|
||
---
|
||
|
||
## Description
|
||
<section id="description"> Ядро многоугольника определяется множеством точек, из которых видима граница всего полигона. Мы определяем полярный многоугольник как многоугольник, для которого начало строго содержится внутри его ядра. <p> Для этой задачи многоугольник может иметь коллинеарные последовательные вершины. Однако многоугольник все еще не может иметь самопересечение и не может иметь нулевую область. </p><p> Например, только первое из следующего является полярным многоугольником (ядра второго, третьего и четвертого не содержат строгого начала, а пятый не имеет ядра вообще): </p><p> Обратите внимание, что первый многоугольник имеет три последовательные коллинеарные вершины. </p><p> Пусть P (n) - число полярных многоугольников, для которых вершины (x, y) имеют целые координаты, абсолютные значения которых не больше n. </p><p> Обратите внимание, что многоугольники должны считаться разными, если они имеют различный набор ребер, даже если они заключают одну и ту же область. Например, многоугольник с вершинами [(0,0), (0,3), (1,1), (3,0)] отличается от многоугольника вершинами [(0,0), (0,3) ), (1,1), (3,0), (1,0)]. </p><p> Например, P (1) = 131, P (2) = 1648531, P (3) = 1099461296175 и P (343) mod 1 000 000 007 = 937293740. </p><p> Найти P (713) mod 1 000 000 007. </p></section>
|
||
|
||
## Instructions
|
||
<section id="instructions">
|
||
</section>
|
||
|
||
## Tests
|
||
<section id='tests'>
|
||
|
||
```yml
|
||
tests:
|
||
- text: <code>euler465()</code> должен вернуть 585965659.
|
||
testString: 'assert.strictEqual(euler465(), 585965659, "<code>euler465()</code> should return 585965659.");'
|
||
|
||
```
|
||
|
||
</section>
|
||
|
||
## Challenge Seed
|
||
<section id='challengeSeed'>
|
||
|
||
<div id='js-seed'>
|
||
|
||
```js
|
||
function euler465() {
|
||
// Good luck!
|
||
return true;
|
||
}
|
||
|
||
euler465();
|
||
|
||
```
|
||
|
||
</div>
|
||
|
||
|
||
|
||
</section>
|
||
|
||
## Solution
|
||
<section id='solution'>
|
||
|
||
```js
|
||
// solution required
|
||
```
|
||
</section>
|