【算法】平衡树(treap)||双向链表
【题解】treap知识见。
#include#include #include using namespace std;const int maxn=100010,inf=0x3f3f3f3f;int n,sum,ans,sz,root;struct cyc{ int l,r,rnd,num;}t[maxn];void insert(int &k,int x){ if(k==0) { k=++sz; t[k].rnd=rand(); t[k].num=x; return; } ans=min(ans,abs(t[k].num-x)); if(x==t[k].num)return; if(x