蓝桥杯第21场小白入门赛补题

5.蓝桥派对

思路 :一个区间与多少个其他区间有关联,先对所有区间左端点和右端点从小到大排序,对于每个询问,我们先算出[1,r]这个区间里有多少个区间的起点即区间总数,使用upper_bound函数,然后使用lower_bound函数计算出第一个大于等于l的右端点是第几个,然后起点个数减终点个数再减去自身即为与其他区间有关联的个数

Code:

cpp 复制代码
constexpr int N=4e5+5,mod=1e9+7;

PII q[N];
int a[N],b[N];

void solve()
{
   int n,m;cin>>n>>m;
   for(int i=0;i<n;i++)
   {
    int x,y;cin>>x>>y;
    q[i]={x,y};
    a[i]=x,b[i]=y;
   }
   sort(a,a+n);
   sort(b,b+n);
   for(int i=0;i<n;i++)
   {
    int l=q[i].first,r=q[i].second;
    int x=upper_bound(a,a+n,r)-a;
    int y=lower_bound(b,b+n,l)-b;
    cout<<x-y-1<<endl;
   }
}
相关推荐
极客BIM工作室25 分钟前
深入理解C++中的Lazy Evaluation:延迟计算的艺术
开发语言·c++
roman_日积跬步-终至千里39 分钟前
【机器学习】“回归“算法模型的三个评估指标:MAE(衡量预测准确性)、MSE(放大大误差)、R²(说明模型解释能力)
算法·机器学习·回归
kokunka42 分钟前
【数据结构】栈的顺序存储(整型栈、字符栈)
数据结构
小指纹2 小时前
图论-最短路Dijkstra算法
数据结构·c++·算法·深度优先·图论
王德博客3 小时前
【从基础到实战】STL string 学习笔记(上)
c++·笔记·学习
赴3353 小时前
逻辑回归 银行贷款资格判断案列优化 交叉验证,调整阈值,下采样与过采样方法
算法·机器学习·逻辑回归·下采样·交叉验证·过采样·阈值
2501_924878733 小时前
无人机光伏巡检缺陷检出率↑32%:陌讯多模态融合算法实战解析
开发语言·人工智能·算法·视觉检测·无人机
沉睡的无敌雄狮3 小时前
无人机光伏巡检漏检率↓78%!陌讯多模态融合算法实战解析
人工智能·算法·计算机视觉·目标跟踪
Algebraaaaa4 小时前
C++ 中 NULL 与 nullptr 有什么区别?
开发语言·c++
magicwt4 小时前
《从零构建大模型》读书笔记
算法