freeCodeCamp/curriculum/challenges/russian/08-coding-interview-prep/project-euler/problem-289-eulerian-cycles...

2.1 KiB
Raw Blame History

id challengeType title videoUrl localeTitle
5900f48d1000cf542c50ffa0 5 Problem 289: Eulerian Cycles Задача 289: Эйлерные циклы

Description

Пусть C (x, y) - окружность, проходящая через точки (x, y), (x, y + 1), (x + 1, y) и (x + 1, y + 1).

Для положительных целых чисел m и n пусть E (m, n) - конфигурация, состоящая из m · n окружностей: {C (x, y): 0 ≤ x <m, 0 ≤ y <n, x и y are целые числа}

Эйлеровский цикл на E (m, n) является замкнутым путем, который проходит через каждую дугу ровно один раз. Множество таких путей возможно на E (m, n), но нас интересуют только те, которые не являются самопересекающимися: непересекающийся путь просто касается себя в точках решетки, но он никогда не пересекает себя.

На приведенном ниже рисунке показано E (3,3) и пример эйлерова пути без пересечения.

Пусть L (m, n) - число эйлеровых пересекающихся путей на E (m, n). Например, L (1,2) = 2, L (2,2) = 37 и L (3,3) = 104290.

Найти L (6,10) mod 1010.

Instructions

Tests

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

Challenge Seed

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

euler289();

Solution

// solution required