IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

2 страниц V < 1 2  
 Ответить  Открыть новую тему 
> ПОМОГИТЕ ДОПОЛНИТЬ АЛГОРИТМ, ДОПОЛНИТЬ АЛГОРИТМ ПОДСЧЁТА СОЧЕТАНИЙ
сообщение
Сообщение #21


Уникум
*******

Группа: Пользователи
Сообщений: 6 823
Пол: Мужской
Реальное имя: Лопáрь (Андрей)

Репутация: -  159  +


Цитата(KOMBIDEN @ 26.03.2010 15:24) *
На FPC алгоритм с дерективами на тестовых задачах (с не очень большими N и M) считает примерно в 2 раза быстрее.
Если скорость счета действительно критична, на отлаженных задачах можно отменить RangeCheck (сделай {$R-}). Это ускорит выполнение - но помни, что ошибки выхода за диапазон теперь будут не видны. Если программа снова будет вести себя странно - включай RangeCheck обратно и лови ошибку.


--------------------
я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #22


Гость






Доброго времени суток всем. Помогите дополнить алгоритм ещё раз если это возможно т. к. я не могу вывести безошибочно математическую формулу. Чтобы было более понятно сначала представлю задачу в виде задачи по теории вероятности, а затем попытаюсь написать задачу языком приближенному к языку программирования. Предыдущий алгоритм вычислял следующее: было дано множество из N элементов предположим поле из N ячеек(у каждой ячейки свой порядковый номер). На это поле случайным образом выбрасоволось M белых шаров. Я в алгоритме задавал несколько комбинаций(сочетаний) выпадения белых шаров на поле с ячейками, указывая номер ячейки куда может выпасть шар . Алгоритм считал все возможные сочетания из заданного N элементного множества, другими словами подсчитывалось полное количество возможных сочетаний из M белых шаров на поле с количеством ячеек равное N(в алгоритме количество этих сочетаний обозначено как *total combinations*). Так же алгоритм отдельно считал и показывал количество всех заданных мной в алгоритме комбинаций выпадения белых шаров на поле с ячейками(данное количество заданных сочетаний обозночалось в алгоритме как *X combinations*.
В дополненном варианте на это же поле помимо M белых шаров выбрасывается R красных шаров. В алгоритме необходима возможность задавать нужные мне комбинации выпадения отдельно для красных и белых шаров т. е. задавать номера ячеек как я это делал в предыдущем алгоритме.
Нужно что бы алгоритм считал и показывал помимо всех возможных комбинаций выпадения белых и красных шаров на поле-*total combinations*, ещё считал и показывал количество всех сочетаний шаров где встречается хотя бы одна заданная в алгоритме комбинация или из белых шаров или из красных шаров(назовём эти сочетания *Y combinations*), а так же подсчитывал и показывал количество всех сочетаний где встречается хотя бы одна заданная комбинация из белых шаров И плюс хотя бы одна заданная комбинация из красных шаров(назовём эти сочетания *Z combinations*). В алгоритме нужно так же учесть что в одну ячейку может попасть только один шар.
Другими словами нужно ввести ещё одну переменную R элементы которой как и элементы M переменной принадлежат множеству N. Элементам переменной R как и элементам переменной M в алгоритме можно присваивать значения(натуральные числа). Из элементов переменной R как и из элементов переменной M формируются комбинации на множестве N. Помимо расчёта всех возможных сочетаний M и R элементов на N множестве необходимо чтобы алгоритм рассчитывал и показывал количество сочетаний в которых встречается хотя бы одна заданная в алгоритме комбинация из элементов переменной М или хотя бы одна заданная комбинация из элементов переменной R, а так же необходим расчет в алгоритме когда рассчитывается и выводится количество всех сочетаний в которых встречается хотя бы одна заданная в алгоритме комбинация из элементов переменной М и одновременно хотя бы одна заданная в алгоритме комбинация из элементов переменной R.
Я понимаю что всё это больше похоже на путаницу, но так как задача не совсем стандартная(по меркам теории вероятности и комбинаторики) я просто пытался представить её как можно более полно. Спасибо за любую помощь!
 К началу страницы 
+ Ответить 

2 страниц V < 1 2
 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 20.04.2024 21:12
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name