P1496 火烧赤壁 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)https://www.luogu.com.cn/problem/P1496
参考代码
#include<bits/stdc++.h>
using namespace std;
#define N 30000
int n;
struct node{
int l,r;//当前区间的真实左右点
int L,R;//将所有区间的左右点混合排序后的该区间的左右节点的排名
}a[N];
int b[N*2];//用于排序以求出排名
int c[N*2];//差分数组
int d[N*2];//差分数组的前缀和数组
long long ans;//用于保存答案
int main()
{
scanf("%d",&n);
for(int i=1;i<=n;i++)//输入后进行离散化
{
scanf("%d%d",&a[i].l,&a[i].r);
b[i]=a[i].l;
b[n+i]=a[i].r;
}
sort(b+1,b+n*2+1);//对b数组排序
auto k=uni