传送门
用两个树状数组,cr 维护 1....x 中 r 的数量
cl 维护 1....x 中 l 的数量
求答案的时候只需要求 y 前面 被作为左端点 的个数 x 前面 被作为右端点的个数
——代码
1 #include <cstdio> 2 3 using namespace std; 4 5 const int MAXN = 1000001; 6 int n, m; 7 int cl[MAXN], cr[MAXN]; 8 9 inline void add1(int x) 10 inline void add2(int x) 11 inline int query1(int x) 12 inline int query2(int x) 13 14 int main() 15 26 else printf("%d\n", query1(y) query2(x 1)); 27 } 28 return 0; 29 }View Code
上一篇:[TyvjP1050] 最长公共子序列(DP)
下一篇:矩阵运算所满足的定律
树状数组









