2.6 KiB
id, title, challengeType, forumTopicId, dashedName
| id | title | challengeType | forumTopicId | dashedName |
|---|---|---|---|---|
| 5900f53d1000cf542c510050 | Завдання 465: Полярні багатокутники | 1 | 302140 | problem-465-polar-polygons |
--description--
Ядро багатокутника визначається сукупністю точок, з яких видно сторони багатокутника. Ми визначаємо полярний багатокутник як багатокутник, джерело якого міститься суворо всередині ядра.
У такому випадку багатокутник може мати послідовні колінеарні вершини. Однак він не може перетинатися та мати нульову площу.
Наприклад, тільки перший з наведених багатокутників є полярним (ядра другого, третього та четвертого не вміщують джерело повністю, а п'ятий взагалі не має ядра):
Зверніть увагу, що перший багатокутник має три послідовні колінеарні вершини.
Нехай P(n) буде кількістю полярних багатокутників, вершини яких (x, y) мають цілі координати, абсолютні значення яких не більші за n.
Зверніть увагу, що багатокутники вважаються різними, якщо вони мають різний набір сторін, навіть якщо вони оточують одну й ту ж саму область. Наприклад, багатокутник з вершинами [(0,0), (0,3), (1,1), (3,0)] відрізняється від багатокутника, що має вершини [(0,0), (0,0), (1,1), (3,0), (3,0), (1,0)].
Наприклад, P(1) = 131, P(2) = 1\\,648\\,531, P(= 1\\,099\\,461\\,296\\,175 та P(343)\bmod 1\\,000\\,007 = 937\\,293\\,740.
Знайдіть P(7^{13})\bmod 1\\,000\\,007.
--hints--
polarPolygons() повинен повертатися як 585965659.
assert.strictEqual(polarPolygons(), 585965659);
--seed--
--seed-contents--
function polarPolygons() {
return true;
}
polarPolygons();
--solutions--
// solution required