Требуется реализовать алгоритм ветвей и границ для поиска разделяющих последовательностей. Задача такова.

На вход подается txt файл с записями вида

НомерКласса: последовальность и предельные ошибки 1 и 2 рода.

Например:

1: b,a,d,c

1: a,d,c,b

2: b,b,b,d

2: a,b,b,d

На каждом шаге берется самый частый элемент, стоящий на первом месте, и добавляется в имеющийся префикс. В данном примере возьмем элемент b. Затем происходит деление таблицы на 2 подтаблицы (одна содержит b в качестве префикса, другая содержит НЕ(b))

b:

1: a,d,c

1:[] (пусто, т.к. b стоит на последнем месте)

2: b,b,d

2: b,d

НЕ(b):

1: a,d,c

1: a,d,c,b

2: d

2: a,b,b,d

Для каждой таблицы расчитываются ошибки 1 и 2 рода. Если для какой-то таблицы ошибка 1 рода больше наперед заданной, то данную таблицу более не рассматриваем. Далее действуем итерационно до тех пор, пока не сделаем "полный перебор".

Реализовать нужно на с++ в один поток.

10 лет назад
Mr_Barash
Андрей 
45 лет
10 лет в сервисе
Был
10 лет назад

Заявки фрилансеров

Нет заявок фрилансеров