#include #include #include #include using namespace std; typedef long long ll; const ll inf = 0x7fffffff; #define N 100005 int tree[400010]; struct num { int id; int val, cval; } a[100010]; bool cmp1(const num& a, const num& b) { return a.val < b.val; } bool cmp2(const num& a, const num& b) { return a.id < b.id; } int f[100010]; int query(int p, int l, int r, int x) { // //cout << "**" << endl; //cout << " l = " << l << " r = " << r <