假设有n个集合,如
A1={1, 3, 7, 8}
A2={1, 5, 7, 11}
A3={3, 5, 8, 12}
A4={4, 5, 7, 13}
...
排序后需要使得从A1到An这个n个集合中连续出现的元素尽可能多(如果元素不连续,后来出现的元素要被删除,见下文),如
A1={3, 5, 8, 12}
A2={1, 3, 7, 8}
A3={1, 5, 7, 11}
A4={4, 5, 7, 13}
这里出现连续三个7,两个1,两个5。但是若某些元素在前面出现过,并且没有继续连续出
现,则在后面的集合中要将这些元素删除,比如排序后的A3和A4中的5,这里连续出现但是
没有和A1中的5连续,所以需要删除。所以排序结果变为:
A1={3, 5, 8, 12}
A2={1, 3, 7, 8}
A3={1, 7, 11}
A4={4, 7, 13}

另外,观察可知,还可以排成以下顺序:
A1={4, 5, 7, 13}
A2={1, 5, 7, 11}
A3={1, 3, 7, 8}
A4={3, 5, 8, 12} 
删除不连续元素后变为:
A1={4, 5, 7, 13}
A2={1, 5, 7, 11}
A3={1, 3, 7, 8}
A4={3, 8, 12} 

最终的要求是排序+删除元素后剩下的元素总数最大。
观察看来这样的排序最好
A1={4, 5, 7, 13}
A2={1, 5, 7, 11}
A3={1, 3, 7, 8}
A4={3, 8, 12} 
因为只有一个元素被删除,剩下的元素个数最大,为15。

大概描述就是这样,不知道大婶们看懂了不...

有什么算法能解这个?头疼ing...先谢谢了~