摘要:
题目的大意是一堆数,选择其中的两个,如果他们是不同群体的话,就选出各自最大的一个,然后PK,减半,并合并在一起。然后操作一个可并堆来完成,左偏树。黄源河的论文里有详细介绍。在实现的时候用并查集来维护块。再用一个数组记录该块(也就是一个左偏树)的根。每次把堆顶元素减半后,堆调下去。再合并两个堆。更新当前集合,并更新当前左偏树的根。左偏树中的外节点性质很好,因为它都能找到一个儿子是NULL的,然后把m... 阅读全文
posted @ 2010-05-20 21:58
litstrong
阅读(218)
评论(0)
推荐(0)