---
id: 5900f4e81000cf542c50fffb
title: 'Задача 380: Дивовижні лабіринти!'
challengeType: 1
forumTopicId: 302044
dashedName: problem-380-amazing-mazes
---

# --description--

Лабіринт $m×n$ - це прямокутна сітка $m×n$ зі стінками, розміщеними між клітинками сітки таким чином, що існує рівно один шлях від верхнього лівого квадрата до будь-якого іншого квадрата. Нижче наведено приклади лабіринту 9×12 та лабіринту 15×20:

<img class="img-responsive center-block" alt="Лабіринт 9х12 і лабіринт 15х20" src="https://cdn.freecodecamp.org/curriculum/project-euler/amazing-mazes.gif" style="background-color: white; padding: 10px;" />

Нехай $C(m, n)$ - кількість різних $m×n$ лабіринтів. Лабіринти, які можуть утворитися шляхом обертання та відбиття від іншого лабіринту, вважаються окремими.

Можна перевірити, що $C(1, 1) = 1$, $C(2, 2) = 4$, $C (3, 4) = 2415$ і $C (9, 12) = 2,5720\mathrm{e}\\,46$ (у наукових позначеннях округлено до 5 значущих цифр).

Знайдіть $C(100, 500)$ і запишіть свою відповідь у вигляді рядка в науковому позначенні, округленому до 5 значущих цифр.

Даючи свою відповідь, використовуйте малі літери e, щоб відокремити мантису та показник степеня. Наприклад. якщо відповідь становить 1234567891011, тоді формат відповіді буде рядком `1.2346e12`.

# --hints--

`amazingMazes()` має повернути рядок.

```js
assert(typeof amazingMazes() === 'string');
```

`amazingMazes()` має повернути рядок `6.3202e25093`.

```js
assert.strictEqual(amazingMazes(), '6.3202e25093');
```

# --seed--

## --seed-contents--

```js
function amazingMazes() {

  return true;
}

amazingMazes();
```

# --solutions--

```js
// solution required
```
