线段树
kryi
这个作者很懒,什么都没留下…
展开
-
Ural 1019. Line Painting
在0到10^9的线段上,一开始颜色全白,然后修改多次子区间颜色或黑或白。求最终状态下的白色最长区间。 主要就是离散化,然后就直接用线段树了。刚刚开始学线段树,代码很挫。 #include #include #include #include #include using namespace std; const int maxn=10010; int col[maxn],x[ma原创 2013-08-01 21:23:24 · 633 阅读 · 0 评论 -
Ural 1090. In the Army Now
#include #include #include #include #include #include #include using namespace std; const int maxn=10010; int sum; int f[maxn*4]; void Build(int n) { sum=0; n=n<<2; for(int i=0;i<=原创 2013-08-01 21:36:05 · 611 阅读 · 0 评论 -
Ural 1037. Memory Management
看到网上有用堆做的,我是用线段树做的,根据noclyt的思想。 把30000个内存建树,记录区间内最早到期的内存时间。 当申请内存时,查询编号最小的空闲内存。 当访问内存时,先查询内存块时候已经到期,否则更新内存块的到期时间。 #include #include #include #include #include #include #include #include #i原创 2013-08-01 21:54:34 · 581 阅读 · 0 评论