Если совсем будет непонятно как делать, то можете задачу свести к задаче поиска максимального независимого множества в графе, которая, в свою очередь, сводится к задаче булева линейного программирования размерности

(получится регулярный граф специального вида со степенью вершин

). Из нее можно получить тривиальную оценку для числа подмножеств

, но она очень грубая.
Это если условие задачи понимать как "пересечение любой пары подмножеств содержит не более одного элемента"...
-- Сб апр 09, 2011 22:10:11 --Можете использовать жадный алгоритм для оценки снизу числа

: пишем упорядоченные тройки в массив и проходим по ним и включаем во множество

, если тройка не пересекается с уже существующими, иначе - не включаем. В итоге

.
Можно отсюда попытаться сделать приближенную оценку сверху. Пусть мы включаем в

множество

, включающее текущую вершину

, причем для всех

не может быть

, поскольку множество, содержащее эти вершины может быть в

. Тогда в

могут быть включены лишь вершины из списка

- не более

пар, а значит не более

множеств

, откуда

.
-- Сб апр 09, 2011 22:12:34 --Например, для

у меня вышло

, а значения оценки
