摘要:
http://poj.org/problem?id=3667经典线段树,不解释了。代码如下:#include <cstdlib>#include <cstring>#include <cstdio> #include <algorithm>#define MAXN 50000 using namespace std;struct{ int l, r; int lmax, rmax, max, cover;}seg[MAXN*4];void build(int f, int l, int r){ int mid = l+r >> 1; 阅读全文
posted @ 2012-03-07 21:21
沐阳
阅读(500)
评论(0)
推荐(0)
摘要:
题目大意为给定一段内存快,要求根据命令输出正确的答案。New x 申请长度为x的空白内存的首地址,如果不满足输出Reject NewFree x 释放包含x节点的内存块,注意该内存块为一个New操作所确定的区域,即不必要将物理相邻的内存块视作一个内存块Get x 得到从左到右的第x个内存块Reset 重置总区间针对这些要求,设定一棵线段树,每个节点保留左,右连续空白段,以及区间总长。这样便能够处理New命令,而Free以及Get命令则用vector保留,用二分搜索优化。代码如下:View Code #include <cstdio>#include <cstring># 阅读全文
posted @ 2012-03-07 20:39
沐阳
阅读(479)
评论(0)
推荐(0)


浙公网安备 33010602011771号