Lang:G++
Edit12345678910111213141516171819202122232425262728293031#include <cstdio>#include <cstring>#include <algorithm>using namespace std;struct seg {int l, r, v;seg *ls, *rs;};const int maxn = 300009;int n, m, t[maxn], *r[maxn], x[maxn], y[maxn], a[maxn], yy[maxn];seg *rt, *sp;inline bool cmpP(int* a, int* b) {return *a < *b;}#define mid(p) ((p->l+p->r)>>1)inline seg *sgtBuild(int l, int r) {seg *p = sp ++;p-> l = l;p-> r = r;p-> v = 0;if (l + 1 < r) {p-> ls = sgtBuild(l, mid(p));p-> rs = sgtBuild(mid(p), r);}