摘要:
线段树成段更新的基础题,每次操作将x到y这个区间的值改为z,然后最后要求输出的是1到n的区间和,根据线段树的性质,1到n的区间和其实就是sum[1]。/*2012-08-08 16:07:20 Accepted 1698 1015MS 2280K 1407 B G++ Yu*/#include<stdio.h>#define lson l, m, rt << 1#define rson m + 1, r, rt << 1 | 1const int MAXN = 100100;int sum[MAXN << 2], col[MAXN <<
阅读全文
posted @ 2012-08-08 16:15
找回失去的
阅读(123)
推荐(0)
编辑
摘要:
食物链是一道经典的并查集题,这道题难在怎么确定两个动物之间的关系。看了罗德安大神的分析,有种豁然开朗的感觉。问题分析:我们把已经确立了关系的动物分到一个群落里,对于每一个提到的两个数字编号, 看它们是否属于同一个群落,如果是的那么根据它们已有的关系,我们作出相应的判断 即可;若它们属于不同的群落,那么根据互相的关系将两个群落合并;若恰有一个没有 加入到任意一个群落之中,那么将这一个并入另一个的群中即可;若两个都未加入任意 群中,那么我们新建一个群即可。基本思路:这一题的难点在于记录动物之间的关系,即ABC三种动物是循环被吃的,我们用 0,1,2表示,记录在rank[i]中,如果i吃j,则让..
阅读全文
posted @ 2012-08-08 15:25
找回失去的
阅读(244)
推荐(0)
编辑