Lang:G++
Edit12345678910111213141516171819202122232425262728293031#include <iostream>#include <algorithm>#include <vector>#include <stack>#include <set>#include <queue>#include <map>#include <cstdio>#include <cstring>#include <cmath>#include <climits>using namespace std;struct Query{int l,r,w;};struct Node{int ls,rs,sum;};Node T[3600000];Query b[210000];vector<int> val;map<int,int> pos;int cnt,root[210000],a[210000];void ins(int &i,int l,int r,int x){if (x<l || r<x){return;}T[++cnt]=T[i];i=cnt;