思路
看到输入是区间,我们想到用差分数组来做
第l到r项都加x,c[l]加x,c[r]减x就可以了
每项为前面所有数的和
AC 代码
#include<bits/stdc++.h>
using namespace std;
#define ll long long
ll n,a,b,answer;
ll c[1000010];//差分数组
int main(){
cin>>n;
for(ll i = 1; i <= n; i++)
{
cin>>a>>b;
c[a]++;
c[b + 1]--;
}
answer = c[0];
for(ll i = 1; i <= 1e6; i++)
{
c[i] += c[i - 1];
answer = max(answer,c[i]);
}
cout<<answer<<endl;
return 0;
}