freeCodeCamp/curriculum/challenges/russian/08-coding-interview-prep/project-euler/problem-367-bozo-sort.russi...

55 lines
3.1 KiB
Markdown
Raw Normal View History

---
id: 5900f4db1000cf542c50ffee
challengeType: 5
title: 'Problem 367: Bozo sort'
videoUrl: ''
localeTitle: 'Задача 367: сортировка Бозо'
---
## Description
<section id="description"> Сортировка Bozo, чтобы не путать с немного менее эффективной сортировкой bogo, состоит в проверке, сортируется ли входная последовательность и если не произвольно меняет два элемента. Это повторяется до тех пор, пока в итоге последовательность не будет отсортирована. <p> Если мы рассмотрим все перестановки первых 4 натуральных чисел в качестве входных значений математического ожидания числа свопов, усредненных по всем 4! входные последовательности - 24,75. Уже отсортированная последовательность занимает 0 шагов. </p><p> В этой задаче рассмотрим следующий вариант на сортировке bozo. Если последовательность не в порядке, мы произвольно выбираем три элемента и произвольно перемешиваем эти три элемента. Все 3! = 6 перестановок этих трех элементов одинаково вероятны. Уже отсортированная последовательность займет 0 шагов. Если мы рассмотрим все перестановки первых 4 натуральных чисел в качестве входных значений математического ожидания количества перетасов, усредненных по всем 4! входные последовательности - 27,5. Рассмотрим в качестве входных последовательностей перестановки первых 11 натуральных чисел. Осредненный по всем 11! входные последовательности, каково ожидаемое количество тасований, которое будет выполнять этот алгоритм сортировки? </p><p> Дайте ваш ответ округленным до ближайшего целого. </p></section>
## Instructions
undefined
## Tests
<section id='tests'>
```yml
tests:
- text: <code>euler367()</code> должен возвратить 48271207.
testString: 'assert.strictEqual(euler367(), 48271207, "<code>euler367()</code> should return 48271207.");'
```
</section>
## Challenge Seed
<section id='challengeSeed'>
<div id='js-seed'>
```js
function euler367() {
// Good luck!
return true;
}
euler367();
```
</div>
</section>
## Solution
<section id='solution'>
```js
// solution required
```
</section>