输入输出解释:
第一行两个数n,m
表示长度为n的线段
接下来的m行读入x,y
表示在[x,y]的区间中加入一条线段
最后一行两个数x,y
输出x到y这一个区间中的线段数
保证x+1=y
样例输入 :
7 5
2 3
2 5
2 4
4 5
2 4
2 4
样例输出:
3
做法:
当某线段能够完整覆盖某个结点所对应的区间时,则不再二分。因此要统计某个单位区间上重叠的线段总数,必须把从叶结点到根结点路径上所有结点的count域累加
代码如下:
#include <cstdio>
#include <cstring>
#include <iostream>
using namespace std;
int c[500000],n,m,e=0;
void insert(int t,int l,int r