亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

Bzoj 1208: [HNOI2004]寵物收養所(splay)

2019-11-10 20:44:57
字體:
來源:轉載
供稿:網友

1208: [HNOI2004]寵物收養所 Time Limit: 10 Sec Memory Limit: 162 MB Description 最近,阿Q開了一間寵物收養所。收養所提供兩種服務:收養被主人遺棄的寵物和讓新的主人領養這些寵物。每個領養者都希望領養到自己滿意的寵物,阿Q根據領養者的要求通過他自己發明的一個特殊的公式,得出該領養者希望領養的寵物的特點值a(a是一個正整數,a<2^31),而他也給每個處在收養所的寵物一個特點值。這樣他就能夠很方便的處理整個領養寵物的過程了,寵物收養所總是會有兩種情況發生:被遺棄的寵物過多或者是想要收養寵物的人太多,而寵物太少。 1. 被遺棄的寵物過多時,假若到來一個領養者,這個領養者希望領養的寵物的特點值為a,那么它將會領養一只目前未被領養的寵物中特點值最接近a的一只寵物。(任何兩只寵物的特點值都不可能是相同的,任何兩個領養者的希望領養寵物的特點值也不可能是一樣的)如果有兩只滿足要求的寵物,即存在兩只寵物他們的特點值分別為a-b和a+b,那么領養者將會領養特點值為a-b的那只寵物。 2. 收養寵物的人過多,假若到來一只被收養的寵物,那么哪個領養者能夠領養它呢?能夠領養它的領養者,是那個希望被領養寵物的特點值最接近該寵物特點值的領養者,如果該寵物的特點值為a,存在兩個領養者他們希望領養寵物的特點值分別為a-b和a+b,那么特點值為a-b的那個領養者將成功領養該寵物。 一個領養者領養了一個特點值為a的寵物,而它本身希望領養的寵物的特點值為b,那么這個領養者的不滿意程度為abs(a-b)?!救蝿彰枋觥磕愕玫搅艘荒戤斨?,領養者和被收養寵物到來收養所的情況,希望你計算所有收養了寵物的領養者的不滿意程度的總和。這一年初始時,收養所里面既沒有寵物,也沒有領養者。 Input 第一行為一個正整數n,n<=80000,表示一年當中來到收養所的寵物和領養者的總數。接下來的n行,按到來時間的先后順序描述了一年當中來到收養所的寵物和領養者的情況。每行有兩個正整數a, b,其中a=0表示寵物,a=1表示領養者,b表示寵物的特點值或是領養者希望領養寵物的特點值。(同一時間呆在收養所中的,要么全是寵物,要么全是領養者,這些寵物和領養者的個數不會超過10000個) Output 僅有一個正整數,表示一年當中所有收養了寵物的領養者的不滿意程度的總和mod 1000000以后的結果。 Sample Input 5 0 2 0 4 1 3 1 2 1 5 Sample Output 3 (abs(3-2) + abs(2-4)=3,最后一個領養者沒有寵物可以領養)

/*splay delete操作.*/#include<iostream>#include<cstdio>#define MAXN 80001#define mod 1000000#define INF 1e9using namespace std;int n,m,tree[MAXN][2],root,t1,t2,size,ans,fa[MAXN],s[MAXN],x1,x2;int read(){ int x=0,f=1;char ch=getchar(); while(ch<'0'||ch>'9') {if(ch=='-')f=-1;ch=getchar();} while(ch>='0'&&ch<='9') x=x*10+ch-48,ch=getchar(); return x*f;}void rotate(int x,int &k){ int y=fa[x],z=fa[y],l,r; if(tree[y][0]==x) l=0;else l=1;r=l^1; if(y==k) k=x; else { if(tree[z][0]==y) tree[z][0]=x; else tree[z][1]=x; } fa[x]=z,fa[y]=x,fa[tree[x][r]]=y; tree[y][l]=tree[x][r];tree[x][r]=y; return ;}void splay(int x,int &k){ int y,z; while(x!=k) { y=fa[x],z=fa[y]; if(y!=k){ if((tree[z][0]==y)^(tree[y][0]==x)) rotate(x,k); else rotate(y,k); } rotate(x,k); } return ;}void add(int &k,int x,int f){ if(!k){k=++size;s[size]=x;fa[k]=f;splay(k,root);return ;} if(x<s[k]) add(tree[k][0],x,k); else add(tree[k][1],x,k); return ;}void dele(int x){ splay(x,root);//轉根. if(!tree[x][0]) root=tree[x][1]; else if(!tree[x][1]) root=tree[x][0]; else {//找x的后繼,將左子樹嫁接到后繼上. int k=tree[x][1]; while(tree[k][0]) k=tree[k][0]; tree[k][0]=tree[x][0];fa[tree[x][0]]=k; root=tree[x][1]; } fa[root]=0; return ;}void before(int k,int x){ if(!k) return ; if(x>=s[k]){t1=s[k];x1=k;before(tree[k][1],x);return ;} else before(tree[k][0],x); return ;}void after(int k,int x){ if(!k) return ; if(x<=s[k]){t2=s[k];x2=k;after(tree[k][0],x);return ;} else after(tree[k][1],x); return ;}int main(){ int x,k,last; n=read(); for(int i=1;i<=n;i++) { k=read();x=read();x1=x2=0; if(!root||last==k) {last=k;add(root,x,0);continue;} before(root,x),after(root,x); if((!x2||x-t1<=t2-x)&&x1) ans=(ans+x-t1)%mod,dele(x1); else if(x2&&(!x1||t2-x<x-t1)) ans=(ans+t2-x)%mod,dele(x2); }
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲区免费影片| 精品国产成人在线| 久久精品99无色码中文字幕| 久久天天躁日日躁| 精品国产91乱高清在线观看| 日韩在线精品视频| 国产成人精品综合久久久| 欧美成人午夜激情视频| 亚洲精品视频中文字幕| 亚洲日本成人网| 亚洲精品自拍偷拍| 欧美性videos高清精品| 亚洲va欧美va国产综合剧情| 日本成人激情视频| 91在线高清视频| 91在线播放国产| 欧美激情中文字幕乱码免费| 久久国产精品亚洲| 亚洲精品av在线播放| 亚洲精品v欧美精品v日韩精品| 欧美日韩国产麻豆| 国产精品69av| 色综合亚洲精品激情狠狠| 亚洲人成在线观看网站高清| 亚洲成人av在线播放| 久久久久亚洲精品成人网小说| 茄子视频成人在线| 成人网中文字幕| 成人久久18免费网站图片| 成人久久18免费网站图片| 日韩亚洲欧美成人| 亚洲一区二区三区在线免费观看| 亚洲日本欧美日韩高观看| 欧美日韩在线视频一区二区| 国产a级全部精品| 日韩欧美亚洲成人| 欧美在线影院在线视频| 亚洲视频在线视频| 国产精品第一第二| 国语自产偷拍精品视频偷| 日韩小视频在线观看| 久久九九全国免费精品观看| 91精品国产综合久久香蕉| 欧美日韩在线观看视频小说| 国产精品9999| 久久视频在线看| 国产精品国产亚洲伊人久久| 亚洲一区第一页| 久热精品视频在线观看一区| www.久久草.com| 中文字幕欧美精品日韩中文字幕| 久久久久久噜噜噜久久久精品| 中文字幕视频一区二区在线有码| 综合网中文字幕| 98精品国产高清在线xxxx天堂| 欧美多人乱p欧美4p久久| 欧美成人剧情片在线观看| 国产精品亚洲一区二区三区| 在线播放精品一区二区三区| 亚洲午夜国产成人av电影男同| 成人福利免费观看| 98视频在线噜噜噜国产| 中文字幕少妇一区二区三区| 欧美日韩激情视频8区| 成人欧美一区二区三区在线| 4p变态网欧美系列| 欧美成人剧情片在线观看| 伦伦影院午夜日韩欧美限制| 精品中文字幕乱| 亚洲夜晚福利在线观看| 精品久久香蕉国产线看观看亚洲| 日韩中文字幕在线观看| 成人精品一区二区三区电影免费| 欧美午夜精品久久久久久人妖| 97精品伊人久久久大香线蕉| 成人在线小视频| 91香蕉嫩草神马影院在线观看| 精品久久久久久亚洲国产300| 欧美日韩免费看| 亚洲欧美第一页| 国产精彩精品视频| 538国产精品一区二区免费视频| 欧美大全免费观看电视剧大泉洋| 日韩av在线一区| 亚洲成人av在线播放| 久久精品中文字幕一区| 亚洲精品在线视频| 日韩精品久久久久| 日韩精品在线电影| 久久精品久久久久久| 精品亚洲国产成av人片传媒| 欧美在线一级视频| 国产精品自产拍在线观看| 亚洲欧美精品伊人久久| 亚洲人线精品午夜| 欧美风情在线观看| 6080yy精品一区二区三区| 欧美日韩美女在线| 在线观看欧美日韩| 国产精品96久久久久久| 波霸ol色综合久久| 亚洲精品v天堂中文字幕| 中国日韩欧美久久久久久久久| 国产精品久久国产精品99gif| 日本精品视频在线播放| 精品久久久久久久久久久久久久| 蜜臀久久99精品久久久无需会员| 国产日韩欧美综合| 国产欧美精品一区二区三区-老狼| 国产精品久久久久久网站| 亚洲成年人影院在线| 久久精彩免费视频| 亚洲一区久久久| 久久中文字幕在线| 久久久免费观看| 91国产精品视频在线| 九九九热精品免费视频观看网站| 欧美激情视频三区| 国产激情999| 亚洲网址你懂得| 亚洲成人黄色在线观看| 少妇激情综合网| 国产精品中文在线| 欧美日韩免费一区| 色www亚洲国产张柏芝| 欧美黑人一区二区三区| 国产成人在线一区| 国产精品久久久久久亚洲调教| 欧美极品美女视频网站在线观看免费| 永久免费毛片在线播放不卡| 日韩视频永久免费观看| 亚洲国产精品嫩草影院久久| 精品视频久久久久久久| 日韩美女写真福利在线观看| 久久亚洲欧美日韩精品专区| 欧美黑人xxxⅹ高潮交| 国产精品久久二区| 91久久精品国产91久久性色| 亚洲免费一在线| 日韩中文视频免费在线观看| 国产精品中文字幕在线观看| 国产最新精品视频| 91日本在线视频| 国产精品夜间视频香蕉| 亚洲色图国产精品| 色噜噜国产精品视频一区二区| 精品亚洲国产视频| 热99精品里视频精品| 在线精品高清中文字幕| 精品成人国产在线观看男人呻吟| 欧美性xxxxx极品| 韩国日本不卡在线| 91精品国产综合久久香蕉的用户体验| 中文字幕欧美视频在线| 91成人精品网站| 91av国产在线| 欧美影院成年免费版| 日韩美女视频中文字幕| 日韩hd视频在线观看| 一区二区三区国产视频| 亚洲美女精品久久| 国产日韩欧美自拍| 亚洲另类图片色| 91视频国产一区|