日本搞逼视频_黄色一级片免费在线观看_色99久久_性明星video另类hd_欧美77_综合在线视频

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > php開源 > php教程 > HDU 1540 POJ 2892 線段樹區間合并

HDU 1540 POJ 2892 線段樹區間合并

來源:程序員人生   發布時間:2015-03-19 08:25:32 閱讀次數:3605次

給出N個點,M次操作,N個點開始在1條線上鏈式相連

D操作  把某點刪除掉 

Q操作  詢問某點1共可以連接多少個點

R操作  把上1次刪除的點還原

線段樹處理區間合并

分別記錄每一個區間的左端連續最長和右端連續最長


#include "stdio.h" #include "string.h" struct node { int l,r,lx,rx,x; }data[200010]; int mark[50100]; int Max(int a,int b) { if (a<b) return b;else return a; } void build(int l,int r,int k) { int mid; data[k].l=l; data[k].r=r; data[k].lx=data[k].rx=data[k].x=data[k].r-data[k].l+1; if (l==r) return ; mid=(l+r)/2; build(l,mid,k*2); build(mid+1,r,k*2+1); } void updata(int x,int k,int op) { int mid,ll,rr; if (data[k].l==data[k].r) { data[k].lx=data[k].rx=data[k].x=op; return ; } mid=(data[k].l+data[k].r)/2; if (x<=mid) updata(x,k*2,op); else if (x>mid) updata(x,k*2+1,op); ll=data[k*2].r-data[k*2].l+1; rr=data[k*2+1].r-data[k*2+1].l+1; data[k].lx=data[k*2].lx; if (data[k*2].lx==ll) data[k].lx+=data[k*2+1].lx; data[k].rx=data[k*2+1].rx; if (data[k*2+1].rx==rr) data[k].rx+=data[k*2].rx; data[k].x=Max(Max(data[k*2].x,data[k*2+1].x),data[k*2].rx+data[k*2+1].lx); } int query(int x,int k) { int mid; if (data[k].l==data[k].r || data[k].x==0 || data[k].x==data[k].r-data[k].l+1) return data[k].x; mid=(data[k].l+data[k].r)/2; if (x<=mid) { if (data[k*2].r-x+1<=data[k*2].rx) return query(x,k*2)+query(mid+1,k*2+1); else return query(x,k*2); } else { if (x-data[k*2+1].l+1<=data[k*2+1].lx) return query(x,k*2+1)+query(mid,k*2); else return query(x,k*2+1); } } int main() { int cnt,n,m,x; char ch[10]; while(scanf("%d%d",&n,&m)!=EOF) { build(1,n,1); cnt=0; while (m--) { scanf("%s",ch); if (ch[0]=='D') { scanf("%d",&x); mark[cnt++]=x; updata(x,1,0); } if (ch[0]=='Q') { scanf("%d",&x); printf("%d ",query(x,1)); } if (ch[0]=='R') { cnt--; if (cnt<0) cnt=0; else updata(mark[cnt],1,1); } } } return 0; }




生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 少妇精品亚洲一区二区成人 | 日本激情在线 | 精品国产一区二区三区久久久 | www国产亚洲精品 | 热re99久久精品国产99热 | 黄色毛片免费 | 国产免费美女网站 | 国产精品久久久久桃色tv | 久久久久免费视频 | www.黄色一级片 | 久久综合国产 | 日本欧美中文字幕 | 黄网站在线播放 | 成人在线视频免费 | 免费在线成人av | 久久久久久国产精品免费免费 | 91精品久久久久久 | 国产视频在线一区二区 | 精品国产三级 | 一区二区三区av | 久久精品区 | 少妇精品久久久一区二区三区 | 国产精品久久久久久久久久免费 | 国产成人精品免高潮在线观看 | av在线播放免费 | 麻豆网站 | 99re在线精品 | 福利视频网址 | 欧美精品在线一区二区三区 | 国产免费一区二区 | 日本久久免费 | 毛片高清 | 精品一二三四区 | 精品国产欧美一区二区三区成人 | 爱爱网址 | 91免费版在线 | 欧美精品一级二级 | 色综综| 国产一区二区毛片 | 国产精品一区二区久久久久 | 一级做a爱片性色毛片www |