Во-первых, извините за неоднозначное название.
Предположим, у меня есть следующая группа наборов:
s1 = ( x1, y1 )
s2 = ( x2 )
m1 = ( x1, y1, y2 )
m2 = ( x1 )
m3 = ( x1 , x2 )
Для каждого из наборов в Группа 1
- вызовите набор s
, Мне нужно найти наборы в группе 2
- назовите ее m
- такие, что m
является подмножеством s
.
Итак, для моего примера ответ будет:
s1 -> m2
s2 -> nothing
На данный момент я сохраняю значения в std: set
, но я могу изменить это при необходимости. Кроме того, наборы могут становиться большими, поэтому алгоритм должен быть эффективным. На данный момент у меня есть подход грубой силы, который меня не совсем устраивает.
Есть предложения?