Натхненний узятим із запитання в Stack Overflow .
Змагання
Враховуючи ціле число n>1
, виведіть усі масиви, які можна отримати, замінивши рівно два записи в масиві [1, 2, ..., n]
.
Масиви можна виготовити в будь-якому порядку.
Ви можете послідовно використовувати [0, 1, ..., n-1]
(на основі 0) замість [1, 2, ..., n]
(на основі 1).
Додаткові правила
Введення та вихід гнучкі, як завжди .
Програми або функції дозволені на будь- якій мові програмування . Стандартні лазівки заборонені.
Найкоротший код у байтах виграє.
Тестові справи
Вхід 2
дає вихід (на основі 1)
2 1
Введення 3
дає вихід (зауважте, що три масиви можуть бути в будь-якому порядку)
1 3 2
2 1 3
3 2 1
Вхід 4
дає вихід
1 2 4 3
1 3 2 4
1 4 3 2
2 1 3 4
3 2 1 4
4 2 3 1
Вхід 7
дає вихід
1 2 3 4 5 7 6
1 2 3 4 6 5 7
1 2 3 4 7 6 5
1 2 3 5 4 6 7
1 2 3 6 5 4 7
1 2 3 7 5 6 4
1 2 4 3 5 6 7
1 2 5 4 3 6 7
1 2 6 4 5 3 7
1 2 7 4 5 6 3
1 3 2 4 5 6 7
1 4 3 2 5 6 7
1 5 3 4 2 6 7
1 6 3 4 5 2 7
1 7 3 4 5 6 2
2 1 3 4 5 6 7
3 2 1 4 5 6 7
4 2 3 1 5 6 7
5 2 3 4 1 6 7
6 2 3 4 5 1 7
7 2 3 4 5 6 1
[0 ... n-1]
vs [1 ... n]
! Я завжди трохи роздратований, коли мені доводиться брати участь у 1+
тому, що J нульові індекси.