Это задача колледжа. Я знаю, как найти перестановку чисел, букв и т. Д., Но это совершенно другое. Вот задача:Найти все разные комбинации предметов обучения, которые имеют уникальные условия
Студент учится в университете. Все учебные модули (предметы) являются избирательными. Все нужно подбирать. Некоторые модули могут быть выбраны только после выбора определенных модулей. Студенту необходимо сформировать учебную программу, в которой модули образуют список. Модули, составляющие список, зависят от ранее выбранных модулей. Создайте программу, которая будет упорядочивать все возможные списки. Файл данных устроен так (первая строка - количество модулей): код модуля, имя модуля, количество модулей, от которых зависит, зависит от кодов зависимых модулей;
9
IF01 Programming 0
IF02 Maths 1 IF01
IF03 Data structures 2 IF01 IF02
IF04 Digital logic 0
IF05 Mathematical logistics 1 IF04
IF06 Operations optimization 1 IF05
IF07 Algorithm analysis 2 IF03 IF06
IF08 Programming theory 1 IF03
IF09 Operating systems 2 IF07 IF08
пример Результат файла одного возможного списка (список с кодами модуля и их имена):
IF01 Programming
IF04 Digital logic
IF02 Maths
IF03 Data structures
IF08 Programming theory
IF05 Mathematical logistics
IF06 Operations optimization
IF07 Algorithm analysis
IF09 Operating systems
Там может быть меньше или больше модулей. Файлы - это просто примеры. Программа должна быть обобщена. В нем говорится, что также следует использовать повторяющиеся методы.
Пожалуйста, помогите. Не знаю, как сформировать условия.
Похоже, дерево какого-то будет лучшим способом представления этих данных. – Abion47
@ Abion47 - это ациклический график с апикалом, а не дерево. – Enigmativity
@ Энигматичность Ах да, неправильная терминология. Граф, а не дерево. – Abion47