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

國(guó)內(nèi)最全I(xiàn)T社區(qū)平臺(tái) 聯(lián)系我們 | 收藏本站
阿里云優(yōu)惠2
您當(dāng)前位置:首頁(yè) > php開(kāi)源 > php教程 > 【BZOJ3888】【Usaco2015 Jan】Stampede 線(xiàn)段樹(shù)判區(qū)間覆蓋

【BZOJ3888】【Usaco2015 Jan】Stampede 線(xiàn)段樹(shù)判區(qū)間覆蓋

來(lái)源:程序員人生   發(fā)布時(shí)間:2015-03-11 07:59:04 閱讀次數(shù):2584次

廣告:

#include <stdio.h> int main() { puts("轉(zhuǎn)載請(qǐng)注明出處[vmurder]謝謝"); puts("網(wǎng)址:blog.csdn.net/vmurder/article/details/44066313"); }

題意:

PoPoQQQ站在原點(diǎn)上向y軸正半軸看,然后有1群羊駝從他眼前飛過(guò)。這些羊駝初始都在第2象限,尾巴在(Xi,Yi),頭在(Xi+1,Yi),每Ci秒向右走1個(gè)單位。
PoPoQQQ能看見(jiàn)1匹羊駝當(dāng)且僅當(dāng)它身體任意某部位x坐標(biāo)為0時(shí),沒(méi)有其它y坐標(biāo)小于此羊駝的羊駝身體某部位x坐標(biāo)為0。
問(wèn)PoPoQQQ能看見(jiàn)幾匹羊駝?

題解:

離散化1下看每頭羊駝?dòng)庠統(tǒng)軸的時(shí)間左端點(diǎn)、右端點(diǎn)。
然后按y坐標(biāo)排序后挨個(gè)去線(xiàn)段樹(shù)里掃看是不是被完全覆蓋。

注意:

[3,4]和[4,5]被覆蓋不代表[4]被覆蓋了
所以離散化時(shí)的取值略加修改。
WAif(i==1||lsh[i].x!=lsh[i⑴].x)m++;
ACif(i==1||lsh[i].x!=lsh[i⑴].x)m+=2;

代碼:

#include <cstdio> #include <cstring> #include <iostream> #include <algorithm> #define N 50500 #define ls (note<<1) #define rs (note<<1|1) using namespace std; struct LSH { long long l,r,x; bool operator < (const LSH &a)const{return x<a.x;} LSH(long long _l=0,long long _r=0,long long _x=0):l(_l),r(_r),x(_x){} }lsh[N*2],q[N]; int n,m,cnt; struct Segment_Tree { int l,r,c; }s[N*6*4]; void pushup(int note) { s[note].c=s[note].c|(s[ls].c&s[rs].c); } void build(int note,int l,int r) { s[note].l=l,s[note].r=r; if(l==r)return ; int mid=l+r>>1; build(ls,l,mid),build(rs,mid+1,r); } int cover(int note,int l,int r) { if(s[note].c)return 0; if(s[note].l==l&&r==s[note].r) { s[note].c=1; return 1; } int mid=s[note].l+s[note].r>>1,ret; if(r<=mid)ret=cover(ls,l,r); else if(l>mid)ret=cover(rs,l,r); else ret=(cover(ls,l,mid)|cover(rs,mid+1,r)); pushup(note); return ret; } int main() { freopen("test.in","r",stdin); int i,j,k; long long a,b,c; scanf("%d",&n); for(i=1;i<=n;i++) { cin>>a>>b>>c; q[i].x=b,a=(-a-1)*c,c+=a; lsh[++cnt]=LSH(i,0,a); lsh[++cnt]=LSH(i,1,c); } sort(lsh+1,lsh+cnt+1); for(i=1;i<=cnt;i++) { if(i==1||lsh[i].x!=lsh[i-1].x)m+=2; if(lsh[i].r==0)q[lsh[i].l].l=m; else q[lsh[i].l].r=m; } sort(q+1,q+n+1); build(1,1,m); int ans=0; for(i=1;i<=n;i++) { ans+=cover(1,q[i].l,q[i].r); } printf("%d ",ans); return 0; }
生活不易,碼農(nóng)辛苦
如果您覺(jué)得本網(wǎng)站對(duì)您的學(xué)習(xí)有所幫助,可以手機(jī)掃描二維碼進(jìn)行捐贈(zèng)
程序員人生
------分隔線(xiàn)----------------------------
分享到:
------分隔線(xiàn)----------------------------
關(guān)閉
程序員人生
主站蜘蛛池模板: 看一级大毛片 | 免费在线观看av | 色婷婷成人精品综合一区 | 色网影院 | 精品视频一区二区三区 | 日韩欧美一区二区三区在线视频 | 在线播放一区二区三区 | 国产91色在线 | 亚洲 | 日韩成人影院 | 91丨九色丨尤物 | 精品视频网站 | 国产成人av在线 | 在线亚洲一区二区 | 欧美日韩国产一区二区三区 | 久久成人免费 | 国产精品五区 | 国产一区二区三区在线观看视频 | 爱情岛亚洲论坛入口福利 | 欧美在线观看视频一区二区 | 欧美日韩中文在线 | 玖玖玖精品 | 精品国产精品三级精品av网址 | 欧美日韩国产色综合视频 | 国产精品zjzjzj在线观看 | 九九九九精品 | 亚洲成人免费观看 | 最近中文字幕视频在线观看 | 九九99久久 | 国产精品一区二区三区不卡 | 国产日韩精品视频 | 99久久精品一区二区成人 | 国产麻豆视频 | 三级成人在线 | 日韩精品免费一区二区在线观看 | 亚洲一区二区三区中文字幕 | 日韩欧美一区二区在线 | 日韩精品一区二区三区四区视频 | 欧美日韩成人在线播放 | 亚洲欧洲精品成人久久奇米网 | 亚洲福利视频一区二区 | 国产区视频 |