Служба безопасности страны :)
От: olimp_20  
Дата: 12.12.17 18:43
Оценка:
Подскажите: какая идея решения? Я начал "копать" в сторону суффиксных деревьев. Может есть боллее лучший подход к решению?

Служба безопасности страны Унляндия получила интересный сигнал с космического пространства, который можно представить в виде последовательности из 0 и 1. Перед работниками этой службы сразу возник вопрос: каким-то образом декодировать это сообщение. Перед декодированием было решено проанализировать полученную последовательность. Оценка заключалась в том, чтобы в указанной последовательности из 0 и 1 найти такие подпоследовательности, которые повторяются чаще.
Ограничения:
а) количество символов в подпоследовательности должна буди в пределах от А до В включительно.
б) искомых последовательностей должно быть не более N.
Входные данные
Входной файл содержит Числа А, В, N, каждое из которых записано в новой строке. Четвертую строчку содержит само сообщение, запись которого заканчивается цифрой 2. Размер входного файла не более 2 Мб.
1≤A≤12, 1≤B≤12, 1≤N≤20
формат результата
Исходный файл содержит не более N строк, в каждой из которых записаны через пробел следующие данные:
1. Количество вхождений найденной подпоследовательности (подпоследовательностей, если несколько разных встречаются одинаковое количество раз).
2. Сама последовательность (подпоследовательности записаны через пробел, без дублирования).
Сортировка:
* По строкам первыми указать подпоследовательности, которые встречаются чаще всего и далее по убыванию.
* Если найдено несколько подпоследовательностей, в которых одинаковое количество вхождений, то первыми указать те, в которых большее количество символов. Если количество символов одинакова, то первыми указать те, которые встречаются ранее при чтении сообщения слева направо.
input.txt
4
5
4
11111111111111011100111111111111111112

output.txt
25 1111
23 11111
2 1110 0111
1 11110 11101 11100 11011 11001 10111 10011 01111 01110 00111 1101 1100 1011 1001 0011
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.