Уведомления

Группа в Telegram: @pythonsu

#1 Сен. 5, 2016 22:11:12

Lion23
Зарегистрирован: 2015-12-03
Сообщения: 29
Репутация: +  0  -
Профиль   Отправить e-mail  

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

((a+b)*c)/d
a=1
b=2
c=3
d=4
Сколько можно получить решений?
Т.е. цифры можно переставлять местами (например:
a=2
b=1
c=4
d=3
).
Выйдет же 24 ответа из 4х переменных?!

Как можно увеличить кол-во ответов из 4х переменных?

Офлайн

#2 Сен. 6, 2016 00:02:57

JOHN_16
От: Россия, Петропавловск-Камчатск
Зарегистрирован: 2010-03-22
Сообщения: 3292
Репутация: +  221  -
Профиль   Отправить e-mail  

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

есть такая наука математическая - комбинаторика. В питоне ее отчасти реализует модуль itertools



_________________________________________________________________________________
полезный блог о python john16blog.blogspot.com

Офлайн

#3 Сен. 6, 2016 00:15:09

Lion23
Зарегистрирован: 2015-12-03
Сообщения: 29
Репутация: +  0  -
Профиль   Отправить e-mail  

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

JOHN_16
есть такая наука математическая - комбинаторика. В питоне ее отчасти реализует модуль itertools
Я знаю, что это из комбинаторики. Давно ее учил, помню, что вроде бы тут нужна формула, а не просто факториалом. Хотя, вроде бы тут только факториал
За подсказку назвы модуля спасибо.
А по теме ты не ответил.

“Выйдет же 24 ответа из 4х переменных?!
Как можно увеличить кол-во ответов из 4х переменных?”

Офлайн

#4 Сен. 6, 2016 03:24:59

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 9865
Репутация: +  853  -
Профиль   Отправить e-mail  

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

Lion23
помню, что вроде бы тут нужна формула, а не просто факториалом
Там три понятия: размещение, сочетание и перестановка.
Так вот перестановка - это частный случай размещения. Размещения могут делаться из не всех элементов или из всех элементов. Когда они делаются из всех элементов - это и есть перестановки.
Поэтому в данном случае, так как тебе не надо брать элементы частично, можно применить формулу для вычисления количества перестановок (а она выводится из формулы вычисления количества размещений из n по n).

Так что лучше научись распознавать, где у тебя размещение, где у тебя сочетание и где у тебя перестановка - и тогда будешь знать, какая формула тебе нужна.

Есть ещё приём, как можно вспомнить формулу:
Вот есть у тебя это выражение с четырьмя элементами и ты не можешь их посчитать вручную - толи их там 4, толи 16, толи 30 - как бы не видно примерный результат, поэтому и формулу не можешь вспомнить.
Что нужно сделать: ты просто берёшь и уменьшаешь количество элементов - то есть берёшь похожее выражение, но в котором два элемента, к примеру. А на двух ты уже можешь вручную посчитать, сколько там комбинаций и формулу подобрать для этого количества комбинаций. Подобрав формулу, ты уже можешь взять ещё похожее выражение (например, на три элемента) и применить к нему найденную формулу. Убедился, что работает формула и даёт правильный результат, - значит вспомнил правильно. И вот после этого можешь уже эту формулу применять к своему первоначальному выражению, которое вручную не считается.



Отредактировано py.user.next (Сен. 6, 2016 03:36:01)

Офлайн

#5 Сен. 6, 2016 21:00:34

Lion23
Зарегистрирован: 2015-12-03
Сообщения: 29
Репутация: +  0  -
Профиль   Отправить e-mail  

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

3! = 6
для большего кол-ва важна точность => т.е. не факт, что формула которая правильно решила на мал. кол-вах/суммах правильно решит на б. кол-вах/суммах.

Ты думаешь, что 4! = 24:true?! Т.е. я изначально все правильно посчитал.
Как можно увеличить кол-во ответов используя 4 цифры?

Офлайн

#6 Сен. 6, 2016 21:24:13

Shaman
Зарегистрирован: 2013-03-15
Сообщения: 1369
Репутация: +  88  -
Профиль   Отправить e-mail  

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

Lion23
Как можно увеличить кол-во ответов используя 4 цифры?
Использовать другие цифры и/или видоизменить выражение, которое даже неоднозначно задано.

Офлайн

#7 Сен. 6, 2016 21:42:10

Lion23
Зарегистрирован: 2015-12-03
Сообщения: 29
Репутация: +  0  -
Профиль   Отправить e-mail  

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

Shaman
Цифры и формулу изменять нельзя

Офлайн

#8 Сен. 6, 2016 22:16:22

Lion23
Зарегистрирован: 2015-12-03
Сообщения: 29
Репутация: +  0  -
Профиль   Отправить e-mail  

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

Все, можете не парится
Я придумал как это сделать. Только, что мысля пришла.
Всем спасибо!

Отредактировано Lion23 (Сен. 6, 2016 22:17:07)

Офлайн

#9 Сен. 7, 2016 00:20:40

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 9865
Репутация: +  853  -
Профиль   Отправить e-mail  

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

Lion23
для большего кол-ва важна точность => т.е. не факт, что формула которая правильно решила на мал. кол-вах/суммах правильно решит на б. кол-вах/суммах.
Формулы комбинаторики уже доказаны для любых количеств. Ты просто это знаешь. Саму формулу ты не помнишь конкретно, потому что они похожи друг на друга. Если же ты сталкиваешься с формулой, про которую не знаешь, как она действует для разных количеств, то ты её доказываешь сам. Вот эти комбинаторные формулы доказываются методом математической индукции - довольно простой метод, школьного уровня хватит, чтобы разобраться и выучить. А используется он очень много где.
И в данном случае 1, 2, 3, 4, … элемента связаны индуктивно.



Отредактировано py.user.next (Сен. 7, 2016 00:22:44)

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version