56 lines
2.0 KiB
Markdown
56 lines
2.0 KiB
Markdown
|
---
|
|||
|
id: 5900f50c1000cf542c51001e
|
|||
|
challengeType: 5
|
|||
|
title: 'Problem 415: Titanic sets'
|
|||
|
videoUrl: ''
|
|||
|
localeTitle: 'Проблема 415: Титанические наборы'
|
|||
|
---
|
|||
|
|
|||
|
## Description
|
|||
|
<section id="description"> Множество точек решетки S называется титаническим множеством, если существует прямая, проходящая через ровно две точки из S. <p> Примером титанического множества является S = {(0, 0), (0, 1), (0, 2), (1, 1), (2, 0), (1, 0)}, где прямая проходящие через (0, 1) и (2, 0), не проходят через любую другую точку из S. </p><p> С другой стороны, множество {(0, 0), (1, 1), (2, 2), (4, 4)} не является титаническим множеством, так как линия, проходящая через любые две точки множества, также проходит через два других. </p><p> Для любого натурального N пусть T (N) - число титанических множеств S, каждая точка (x, y) удовлетворяет 0 ≤ x, y ≤ N. Можно проверить, что T (1) = 11, T (2 ) = 494, T (4) = 33554178, T (111) mod 108 = 13500401 и T (105) mod 108 = 63259062. </p><p> Найдите T (1011) mod 108. </p></section>
|
|||
|
|
|||
|
## Instructions
|
|||
|
<section id="instructions">
|
|||
|
</section>
|
|||
|
|
|||
|
## Tests
|
|||
|
<section id='tests'>
|
|||
|
|
|||
|
```yml
|
|||
|
tests:
|
|||
|
- text: <code>euler415()</code> должен вернуть 55859742.
|
|||
|
testString: 'assert.strictEqual(euler415(), 55859742, "<code>euler415()</code> should return 55859742.");'
|
|||
|
|
|||
|
```
|
|||
|
|
|||
|
</section>
|
|||
|
|
|||
|
## Challenge Seed
|
|||
|
<section id='challengeSeed'>
|
|||
|
|
|||
|
<div id='js-seed'>
|
|||
|
|
|||
|
```js
|
|||
|
function euler415() {
|
|||
|
// Good luck!
|
|||
|
return true;
|
|||
|
}
|
|||
|
|
|||
|
euler415();
|
|||
|
|
|||
|
```
|
|||
|
|
|||
|
</div>
|
|||
|
|
|||
|
|
|||
|
|
|||
|
</section>
|
|||
|
|
|||
|
## Solution
|
|||
|
<section id='solution'>
|
|||
|
|
|||
|
```js
|
|||
|
// solution required
|
|||
|
```
|
|||
|
</section>
|