2011年7月11日

poj-3321 Apple Tree ****

摘要: /* 看了网上的代码。。再自己写了一个。。。( 网上很多代码都是默认输入的数据u是v的父节点。。 也能AC。。 但不严谨。。)【转】思路:树状数组。这道题重点怎么建立树到树状数组的映射关系:利用dfs遍历树,对每个节点进行两次编号,第一次搜到第i个节点时的深度dep,为这个节点管辖区间的上限low[i](也为这个节点的下标),然后搜这个节点的子节点,最后搜回来后的深度dep,为这个节点管辖区间的下限high[i]。接下来就是树状数组部分了。*//* * 3321 * 邻接表建树+树状数组 * */#include <cstdio>using namespace std;const 阅读全文

posted @ 2011-07-11 21:43 龙豆 阅读(343) 评论(0) 推荐(0)

poj-1195 Mobile phones *

摘要: /* 难得的1A题~~ 标准的树状数组 * 1195.cpp * 注意坐标从0开始, 应处理成从1开始 * Created on: 2011-7-11 * Author: */#include <cstdio>using namespace std;const int MAXS = 1024 + 5;int map[MAXS][MAXS] = {};int c[MAXS][MAXS] = {};int s, x, y , a, l, r, b, t, cmd; //题目中的参数int lowbit(int x){ return x & (-x);}void update(i 阅读全文

posted @ 2011-07-11 15:37 龙豆 阅读(274) 评论(0) 推荐(0)

poj-2777 Count Color *

摘要: //蛮水的线段树//2777//用scanf() 用位运算#include <cstdio>#include <cstring>using namespace std;const int MAXL = 100000 + 5;const int MAXT = 30 + 5;int L, T, O, a, b, c, ans;bool vis[MAXT * 3];char cmd;struct node{ int l, r; int c;};node tree[MAXL * 3];void build(int i, int l, int r){ tree[i].l = l; 阅读全文

posted @ 2011-07-11 15:06 龙豆 阅读(257) 评论(0) 推荐(0)

导航