首页 > 代码库 > HDU 3436 Queue-jumpers
HDU 3436 Queue-jumpers
从一开始学离散化就对它没有半毛钱好感,感觉出这种题纯属恶心人。
可以将Top x全部取出来然后离散化,缩点。剩下的就是伸展了,不再赘述。
也有人拿线段树过,一直没有想明白. . .
#include <algorithm> #include <iostream> #include <cstring> #include <cstdlib> #include <cstdio> #include <queue> #include <cmath> #include <stack> #include <map> #pragma comment(linker, "/STACK:1024000000"); #define EPS (1e-8) #define LL long long #define ULL unsigned long long #define _LL __int64 #define _INF 0x3f3f3f3f #define Mod 9999991 using namespace std; const int MAXN = 200100; struct N { //info int son[2],pre; //data int data; int sum; int ls,rs,s; }st[200100]; struct O { int ty; int x; }com[101000]; struct NNum { int num,w,site; }Num[201000],TNum[201000]; int Top_Num; int Top; void Updata(int root) { st[root].ls = 0,st[root].rs = 0; if(st[root].son[0] != -1) st[root].ls = st[st[root].son[0]].s; if(st[root].son[1] != -1) st[root].rs = st[st[root].son[1]].s; st[root].s = st[root].rs + st[root].ls + st[root].sum; } void Push_Down(int root) { ; } void Init(int &root,int s,int e,int pre) { if(s > e) return ; int mid = (s+e)>>1; root = Top++; st[root].data = http://www.mamicode.com/Num[mid].num;>
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。