freeCodeCamp/curriculum/challenges/russian/08-coding-interview-prep/project-euler/problem-415-titanic-sets.ru...

2.0 KiB
Raw Blame History

id challengeType title videoUrl localeTitle
5900f50c1000cf542c51001e 5 Problem 415: Titanic sets Проблема 415: Титанические наборы

Description

Множество точек решетки S называется титаническим множеством, если существует прямая, проходящая через ровно две точки из S.

Примером титанического множества является S = {(0, 0), (0, 1), (0, 2), (1, 1), (2, 0), (1, 0)}, где прямая проходящие через (0, 1) и (2, 0), не проходят через любую другую точку из S.

С другой стороны, множество {(0, 0), (1, 1), (2, 2), (4, 4)} не является титаническим множеством, так как линия, проходящая через любые две точки множества, также проходит через два других.

Для любого натурального 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.

Найдите T (1011) mod 108.

Instructions

Tests

tests:
  - text: <code>euler415()</code> должен вернуть 55859742.
    testString: 'assert.strictEqual(euler415(), 55859742, "<code>euler415()</code> should return 55859742.");'

Challenge Seed

function euler415() {
  // Good luck!
  return true;
}

euler415();

Solution

// solution required