![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
线段树
dish_top
这个作者很懒,什么都没留下…
展开
-
HDU - 1754 I Hate It
#include using namespace std; int s[800005]; int a[200005]; void build(int id,int ll,int rr){ if(ll==rr){ s[id]=a[ll]; return; } int mid = (ll+rr)/2; build(id*2,ll,m原创 2017-08-22 12:38:02 · 159 阅读 · 0 评论 -
POJ - 3468 A Simple Problem with Integers
#include long long s[400005],a[100005]; long long addlazy[400005]; void pushdown(long long id,long long ll,long long rr){ long long mid=(ll+rr)>>1; long long ls=id*2,rs=id*2+1; addlazy[l原创 2017-08-22 12:39:02 · 130 阅读 · 0 评论 -
HDU - 1698 Just a Hook
#include using namespace std; int s[400005],lazy[400005]; void pushdown(int id,int l,int r){ int mid=(l+r)/2; int ls=id*2,rs=id*2+1; lazy[ls]=lazy[rs]=lazy[id]; s[ls]=(mid-l+1)*lazy[原创 2017-08-22 20:47:42 · 143 阅读 · 0 评论 -
POJ - 3264 Balanced Lineup
#include int a[200000]; struct node{ int maxx,minn; }s[800000]; int max(int a,int b){ if(a>b) return a; return b; } int min(int a,int b){ if(a<b) return a; retu原创 2017-08-22 20:48:20 · 227 阅读 · 0 评论 -
线段树总结
线段树模版主要是由Build函数,Query函数,updata函数,pushdown函数组成 //Build函数 void Build(int id,int ll,int rr){ lazy[id]=0; //lazy数组的作用是存放区间变化的值,在单点更新的时候可以忽略 if(ll==rr){ s[id]=1; return;原创 2017-08-22 21:00:43 · 166 阅读 · 0 评论 -
HDU - 1166 敌兵布阵
#include int s[200005]; int addlazy[200005]; int a[50005]; void pushdown(int id,int ll,int rr){ int mid=(ll+rr)/2; int ls=2*id,rs=2*id+1; addlazy[ls]+=addlazy[id]; addlazy[rs]+=addla原创 2017-08-22 12:36:58 · 151 阅读 · 0 评论