Дискуссионный математический форумМатематический форум

Математический форум Math Help Planet

Обсуждение и решение задач по математике, физике, химии, экономике

Теоретический раздел
Часовой пояс: UTC + 4 часа [ Летнее время ]
MathHelpPlanet.com RSS-лента Математического форума

Часовой пояс: UTC + 4 часа [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 27 ]  На страницу 1, 2, 3  След.
Автор Сообщение
 Заголовок сообщения: Количество перестановок
СообщениеДобавлено: 15 фев 2018, 23:00 
Не в сети
Одарённый
Зарегистрирован:
02 дек 2015, 12:16
Сообщений: 179
Cпасибо сказано: 93
Спасибо получено:
3 раз в 3 сообщениях
Очков репутации: 1

Добавить очки репутацииУменьшить очки репутации
Добрый день!

Есть генератор чисел.
Генерируются натуральные числа от 1 до 10 включительно.
Условно, есть переменная(коробка), куда записывается(кладется) максимальное число.
Изначально переменная равна первому элементу.
Есть количество раз, сколько эта переменная (коробка) изменяется (обновляется)
Нужно подсчитать количество перестановок которое может выдать генератор, чтобы удовлетворять условию о изменении переменной.

Конкретный пример:
1.
Переменная (max) должна изменится 9 раз.
Ответ: кол-во перестановок - 1, а именно:
1 2 3 4 5 6 7 8 9 10
max = 1
1-я итерация - max не изменяется(равен самому себе)
2-я итерация - max = 2 (изменилась 1 раз)
ну и тд.
Здесь всё ясно.

2. Переменная (max) изменяется 0 раз
10 1 2 3 4 5 6 7 8 9
max = 10
1-я итерация - max не изменяется
2-я итерация - max не изменяется, т.к меньше и тд
Становится ясно, что таких перестановок = 9!
Просто переставляем оставшиеся 9 элементов

Как подсчитать перестановок в других случаях, когда изменяется 1, 2, и тд раз ?

Вернуться к началу
 Профиль  
Cпасибо сказано 
 Заголовок сообщения: Re: Количество перестановок
СообщениеДобавлено: 16 фев 2018, 00:22 
Не в сети
Light & Truth
Зарегистрирован:
10 дек 2013, 03:33
Сообщений: 2277
Cпасибо сказано: 163
Спасибо получено:
288 раз в 279 сообщениях
Очков репутации: 38

Добавить очки репутацииУменьшить очки репутации
Вы можете нормально сформулировать задачу.

Вам что нужно?

Составить код программы генерации массива случайных чисел?

Вернуться к началу
 Профиль  
Cпасибо сказано 
 Заголовок сообщения: Re: Количество перестановок
СообщениеДобавлено: 16 фев 2018, 00:29 
Не в сети
Одарённый
Зарегистрирован:
02 дек 2015, 12:16
Сообщений: 179
Cпасибо сказано: 93
Спасибо получено:
3 раз в 3 сообщениях
Очков репутации: 1

Добавить очки репутацииУменьшить очки репутации
sergebsl писал(а):
Вы можете нормально сформулировать задачу.

Ну, я старался, чтобы было более-менее понятно
sergebsl писал(а):
Составить код программы генерации массива случайных чисел?

Нет.

sergebsl писал(а):
Вам что нужно?

Зная количество выполнение оператора изменения результата, узнать количество возможных перестановок.

Вернуться к началу
 Профиль  
Cпасибо сказано 
 Заголовок сообщения: Re: Количество перестановок
СообщениеДобавлено: 16 фев 2018, 00:36 
Не в сети
Одарённый
Зарегистрирован:
02 дек 2015, 12:16
Сообщений: 179
Cпасибо сказано: 93
Спасибо получено:
3 раз в 3 сообщениях
Очков репутации: 1

Добавить очки репутацииУменьшить очки репутации
И так, начну с начала.
Есть массив чисел от 1 до 10
Есть переменная(max), в которой будет хранится максимум из данного диапазона.
На этапе инициализации переменная равна первому элементу массива.
Псевдо-код:
1. array = { 1,2,3,4,5,6,7,8,9,10 } 
2. max = array[1]
3. for i=1 to n do
4. if array[i] > max
5. max = array[i]

Итого. Заведомо известно, сколько раз выполняется оператор 5 (изменяется переменная max)
Нужно составить таблицу. Первая колонка - кол-во выполнение оператора 5. Вторая - кол-во возможных перестановок. Есть еще третья с вероятностью, но она меня пока мало интересует.
Случай когда оператор 5 выполняется 9 раз - я посчитал. 0 раз - тоже.
Когда оператор выполняется 0 раз - означает что первая переменная и так максимальна.
Т.е исходный массивы выглядит так:
array = { 10,1,2,3,4,5,6,7,8,9}
max = array[1]
Здесь, по-мимо данной комбинации, может быть еще 9! комбинаций, которые подходят под условия, на подобии
{ 10,1,3,2,4,5,6,7,8,9}
{ 10,1,2,4,3,5,6,7,8,9}
и тд.

Не получается посчитать остальные.

Вернуться к началу
 Профиль  
Cпасибо сказано 
 Заголовок сообщения: Re: Количество перестановок
СообщениеДобавлено: 16 фев 2018, 01:15 
Не в сети
Light & Truth
Зарегистрирован:
10 дек 2013, 03:33
Сообщений: 2277
Cпасибо сказано: 163
Спасибо получено:
288 раз в 279 сообщениях
Очков репутации: 38

Добавить очки репутацииУменьшить очки репутации
начальное значение max принимается за 0, при условии, если все элеиенты массива array положительные.

Вернуться к началу
 Профиль  
Cпасибо сказано 
 Заголовок сообщения: Re: Количество перестановок
СообщениеДобавлено: 16 фев 2018, 01:18 
Не в сети
Light & Truth
Зарегистрирован:
10 дек 2013, 03:33
Сообщений: 2277
Cпасибо сказано: 163
Спасибо получено:
288 раз в 279 сообщениях
Очков репутации: 38

Добавить очки репутацииУменьшить очки репутации
Всевозможное число наборов array равно n!=1•2•3•4•5•…•n

n - размерность массива

Вернуться к началу
 Профиль  
Cпасибо сказано 
 Заголовок сообщения: Re: Количество перестановок
СообщениеДобавлено: 16 фев 2018, 01:27 
Не в сети
Light & Truth
Зарегистрирован:
10 дек 2013, 03:33
Сообщений: 2277
Cпасибо сказано: 163
Спасибо получено:
288 раз в 279 сообщениях
Очков репутации: 38

Добавить очки репутацииУменьшить очки репутации

if array[i]>max then do
begin
max:=array[i];
k:=k+1;
end


k - счётчик числа присваиваний переменной max

перед циклом, естественно, его обнуляем.

после того, как перебрали все элементы массива, выводим k на экран.

Вернуться к началу
 Профиль  
Cпасибо сказано 
 Заголовок сообщения: Re: Количество перестановок
СообщениеДобавлено: 16 фев 2018, 01:34 
Не в сети
Light & Truth
Зарегистрирован:
10 дек 2013, 03:33
Сообщений: 2277
Cпасибо сказано: 163
Спасибо получено:
288 раз в 279 сообщениях
Очков репутации: 38

Добавить очки репутацииУменьшить очки репутации
Анализ алгоритма пузырьковой сортировки

Вернуться к началу
 Профиль  
Cпасибо сказано 
 Заголовок сообщения: Re: Количество перестановок
СообщениеДобавлено: 16 фев 2018, 15:17 
Не в сети
Одарённый
Зарегистрирован:
02 дек 2015, 12:16
Сообщений: 179
Cпасибо сказано: 93
Спасибо получено:
3 раз в 3 сообщениях
Очков репутации: 1

Добавить очки репутацииУменьшить очки репутации
sergebsl писал(а):
начальное значение max принимается за 0, при условии, если все элеиенты массива array положительные.

Еще раз. По условию, начальное значение max = array[1], т.е первому элементу массива. И точка. Никаких изменений в коде.

sergebsl писал(а):
k - счётчик числа присваиваний переменной max

sergebsl писал(а):
Всевозможное число наборов array равно n!=1•2•3•4•5•…•n

Всё это очевидно. Я не просил вас писать какой-то код.

Еще раз.
У меня УЖЕ известно значение k. Никакого кода писать не нужно, нужно математически с помощью комбинаторики подсчитать количество подходящих массивов.
Задача следующая:
Задано количество изменений счетчика k. (число от 0 до 9, если массив размерностью 10 элементов.)
Необходимо найти количество массивов array, которые будут удовлетворять данному условию.
Например. Счетчик k = 0.
Количество подходящих массивов: 9!
А именно
array = {10,1..9} // где остальные 9 элементов переставляются между собой
max = array[1]
k =0
for i=1 to n do:
if array[i] > max
max = array[i]
k=k+1

Очевидно что, значение переменной k в данном случае не увеличится никогда, т.е равно 0.

Аналогично нужно с помощью Комбинаторики(если это в целом возможно для остальных случаев), подсчитать количество подходящих массивов, при которых счетчик k будет равен 2, 3...8 (вариант для девяти я уже подсчитал, в предыдущих постах). Никакой код писать не нужно.

Вернуться к началу
 Профиль  
Cпасибо сказано 
 Заголовок сообщения: Re: Количество перестановок
СообщениеДобавлено: 16 фев 2018, 15:35 
Не в сети
Light & Truth
Зарегистрирован:
10 дек 2013, 03:33
Сообщений: 2277
Cпасибо сказано: 163
Спасибо получено:
288 раз в 279 сообщениях
Очков репутации: 38

Добавить очки репутацииУменьшить очки репутации
Всё зависит от того, какой номер имеет максимальный элемент в массиве.

Мы циклически за один раз перебираем элементы массива.

Если допустим первым будет минимальный элемент, то надо будет перебрать все элементы с последующим присваиваним переменной max, пока не наткнёмся на максимальный

Вернуться к началу
 Профиль  
Cпасибо сказано 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 27 ]  На страницу 1, 2, 3  След.

 Похожие темы   Автор   Ответы   Просмотры   Последнее сообщение 
Посчитать количество перестановок

в форуме Линейная и Абстрактная алгебра

dorr

3

489

12 мар 2014, 19:33

Найти количество перестановок с условием

в форуме Комбинаторика и Теория вероятностей

DonkeyKong245

1

355

12 апр 2015, 12:43

Подсчитать количество различных перестановок цифр

в форуме Комбинаторика и Теория вероятностей

fheeda

7

1026

20 апр 2015, 20:27

Число перестановок

в форуме Комбинаторика и Теория вероятностей

briz

4

354

05 май 2014, 12:49

Композиция перестановок

в форуме Линейная и Абстрактная алгебра

hotclover

2

354

11 янв 2015, 20:00

Умножение перестановок

в форуме Дискретная математика, Теория множеств и Логика

MIEL

7

663

15 янв 2017, 18:43

Коммутативная композиция перестановок

в форуме Линейная и Абстрактная алгебра

portmap

0

282

19 май 2013, 21:30

Алгебра. Коммутанты. Группа перестановок

в форуме Аналитическая геометрия и Векторная алгебра

Zaliaparakira

1

88

20 дек 2017, 14:10

Количество комбинаций

в форуме Комбинаторика и Теория вероятностей

slavyanin

3

519

26 май 2013, 20:01

Количество экстремумов

в форуме Пределы числовых последовательностей и функций, Исследования функций

user16

7

169

02 июн 2017, 16:58


Часовой пояс: UTC + 4 часа [ Летнее время ]



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 6


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  

Яндекс.Метрика

Copyright © 2010-2016 MathHelpPlanet.com. All rights reserved