freeCodeCamp/curriculum/challenges/russian/08-coding-interview-prep/project-euler/problem-336-maximix-arrange...

58 lines
3.4 KiB
Markdown
Raw Normal View History

---
id: 5900f4bd1000cf542c50ffcf
challengeType: 5
title: 'Problem 336: Maximix Arrangements'
forumTopicId: 301994
localeTitle: 'Задача 336: договоренности Максимикса'
---
## Description
<section id='description'>
Поезд используется для перевозки четырех вагонов в следующем порядке: ABCD. Однако иногда, когда поезд прибывает для сбора вагонов, они не в правильном порядке. Чтобы переставить вагоны, они все шунтируются на большой вращающийся поворотный стол. После того, как вагоны отсоединены в определенном месте, поезд сходит с поворотного стола, потянув за вагоны, все еще прикрепленные к нему. Остальные вагоны поворачиваются на 180 градусов. Затем все вагоны возвращаются, и этот процесс повторяется настолько часто, насколько это необходимо, чтобы получить наименьшее количество применений поворотного стола. Некоторые устройства, такие как ADCB, могут быть легко решены: каретки разделены между A и D, и после того, как DCB повернут, правильный порядок был достигнут. <p> Тем не менее, Simple Simon, водитель поезда, не известен своей эффективностью, поэтому он всегда решает проблему, изначально получая каретку A в нужном месте, затем каретку B и т. Д. </p><p> Используя четыре вагоны, самыми сильными мерами для Саймона, которые мы будем называть схемами максимикса, являются DACB и DBAC; каждый из которых требовал от него пяти поворотов (хотя, используя самый эффективный подход, их можно было решить с помощью всего трех поворотов). Процесс, который он использует для DACB, показан ниже. </p><p> Можно проверить, что существует 24 механизма максимизации для шести вагонов, из которых десятая лексикографическая схема максимизации - DFAECB. </p><p> Найдите 2011-й лексикографический принцип максимизации для одиннадцати вагонов. </p>
</section>
## Instructions
<section id='instructions'>
</section>
## Tests
<section id='tests'>
```yml
tests:
- text: <code>euler336()</code> should return CAGBIHEFJDK.
testString: assert.strictEqual(euler336(), CAGBIHEFJDK);
```
</section>
## Challenge Seed
<section id='challengeSeed'>
<div id='js-seed'>
```js
function euler336() {
// Good luck!
return true;
}
euler336();
```
</div>
</section>
## Solution
<section id='solution'>
```js
// solution required
```
</section>