Я пытаюсь найти различные последовательности фиксированной длины, которые могут быть сгенерированы с использованием чисел из заданного набора (отдельные элементы), так что каждый элемент из набор должен появиться в последовательности. Ниже приведена моя логика:Число отдельных последовательностей фиксированной длины, которые могут быть сгенерированы с использованием заданного набора чисел
например. Пусть множество состоит из S элементов, и мы должны генерировать последовательности длины K (K> = S)
1) Сначала нам нужно выбрать S мест из K и поместить каждый элемент из набора в случайном порядке. Итак, C (K, S) * S!
2) После этого оставшиеся места могут быть заполнены из любых значений из набора. Таким образом, коэффициент
(K-S)^S следует умножить.
Таким образом, общий результат
C (K, S) S! ((K-S)^S)
Но, я получаю неправильный ответ. Пожалуйста помоги.
PS: C (K, S): количество способов выбора элементов S из элементов K (K> = S) независимо от порядка. Кроме того, ^: символ мощности т.е. 2^3 = 8.
Вот мой код в Python:
# m is the no. of element to select from a set of n elements
# fact is a list containing factorial values i.e. fact[0] = 1, fact[3] = 6& so on.
def ways(m,n):
res = fact[n]/fact[n-m+1]*((n-m)**m)
return res
Разве это не математическая проблема? Я имею в виду, неправильно ли ваша формула, или это неправильный код? –
@ LasseV.Karlsen Моя формула неправильная. –