Посчитать горные массивы [закрыто]JAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Посчитать горные массивы [закрыто]

Сообщение Anonymous »


Горный массив имеет следующие особенности:
[*]все элементы в массиве разные [*]Размер массива равен A, что нечетно. [*]элементы от 1 до A/2 увеличиваются. [*]оставшиеся элементы справа уменьшаются [*]элемент в позиции (A/2 +1) является максимальным
Для заданного размера массива A и диапазона чисел от [1, B] включительно подсчитайте, сколько возможных горных массивов.

Подсчитайте все возможные различные горные массивы для данных A и B.

Например:

A = 3, B = 4 Возможные массивы: 8

1 3 2 2 3 1 1 4 3 3 4 1 2 4 3 3 4 2 1 4 2 2 4 1 У нас есть 8 возможных горных массивов. поэтому результат 8. Моя идея состоит в том, чтобы сгенерировать все возможные массивы размера A, используя цифры от 1 до B, и определить, является ли это горным массивом или нет. Но мой подход требует много времени. Каков правильный подход к решению этой проблемы?

Это мой код для генерации всех возможных перестановок:

импортировать java.util.ArrayList; импортировать java.util.List;

публичный класс Main { public static void kSubsetPermutations(String частично, List set, int k) { for (int element: set) { если (к == 1) { System.out.println(частичный + элемент); } еще { List copyOfSet = новый ArrayList(set); copyOfSet.remove(Integer.valueOf(элемент)); kSubsetPermutations (частичный + элемент, copyOfSet, k - 1); } } } public static voidsolve(int A, int B) { List list = new ArrayList(); for(int i=1; i
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»