当前位置: 首页 > news >正文

25 LCA模拟赛3T1 ROI 2012马赛克 题解

马赛克

题面

题解

这道题想了很久如何快速求出一个点最右边或者最左边的不相容点,但是没有什么思路。

我们将题目中给定的有序对抽象为 \((a,b)\)

最后 xpigeon 带神给出了一个结论,就是一段序列中只要出现了两个互不相同的 \(a\) ,并且出现了两个互不相同的 \(b\),那么就一定会不相容。

我们来证明一下:

对于两个数对的情况,显然不相容。

对于三个数对的情况,假设前两个相容,那么一定是形如 \((x,y), (x, *)\) 或者 \((x, y), (*, y)\),我们讨论第一个情况,第二种情况同理。

假设前两个完全相同,那么和两个数对的情况相同,所以我们只讨论前两个不同的情况。

前两个为 \((x, y), (x, q)\) 为了出现两个互不相同的 \(a\),第三个数对一定为 \((p, *)\) 其中 \(*\) 可能为 \(y\)\(q\) 或其他。

那么不管 \(*\) 取哪种情况,都会和前两个中的某一个不相容。

对于大于等于三个数对的情况,我们同样可以按照三个数对的情况推得。

有了这样一个结论,我们只需找到对于每个数对右边的第一个 \(a\) 与其不同的数对,以及第一个 \(b\) 与其不同的数对。

然后看这两个数对的位置是否都包含在我们的区间范围内即可。

时间复杂度 \(O(n)\)

code

#include <iostream>
#include <algorithm>
#include <cstring>
#include <cstdio>
#include <vector>
#include <map>
#include <set>using namespace std;namespace michaele {const int N = 1e5 + 10;int n, m;pair <int, int> a[N];int ne1[N], ne2[N];void solve () {cin >> n;for (int i = 1; i <= n; i ++) {cin >> a[i].first >> a[i].second;}for (int i = n; i >= 1; i --) {if (a[i + 1].first != a[i].first) ne1[i] = i + 1;else ne1[i] = ne1[i + 1];if (a[i + 1].second != a[i].second) ne2[i] = i + 1;else ne2[i] = ne2[i + 1];}cin >> m;for (int i = 1; i <= m; i ++) {int l, r, x, y;cin >> l >> r;x = ne1[l], y = ne2[l];if (x > r || y > r) {cout << "0 0" << endl;} else if (a[l].second != a[x].second) {cout << l << ' ' << x << endl;} else if (a[l].first != a[y].first) {cout << l << ' ' << y << endl;} else {cout << x << ' ' << y << endl;}}}}int main () {michaele :: solve ();return 0;
}
http://www.hskmm.com/?act=detail&tid=32351

相关文章:

  • 实验记录2025/10/14
  • 个人微信开发框架
  • 投资指标技术分析
  • linux源码编译python
  • uni-app x开发商城系统,Swiper 轮播图
  • 昂瑞微OM6651A:国产车规级蓝牙芯片的破局者
  • 2025年中央空调/锅炉房/机房运维服务厂家最新权威推荐榜:专业托管与维修外包一体化解决方案精选
  • 【终极解决方案】api-ms-win-core-path-l1-1-0.dll 缺失?Win7/Win10/Win11完整修复教程
  • 2025 年最新推荐分切机实力厂家权威榜单:覆盖全自动高速、铝箔、薄膜、高精度等机型,为软包装企业精选优质设备
  • 打破应用跳转流失困局,提升推广链接转化率
  • 性能测试进阶秘籍:如何用JMeter分布式压测挖掘系统极限潜
  • Codeforces Round 1058 (Div. 2) A~E
  • 2025 年生料带厂家最新推荐排行榜:解析优质品牌优势,涵盖新型、彩色、液态等多类型生料带厂家企业推荐
  • openresty开发lua-resty-openssl之对称加密解密 - liuxm
  • 哈希乱搞:CF1418G Three Occurrences
  • 2025 年废旧轮胎裂解加热生产厂家最新推荐榜单:优质企业专利技术、产能规模与口碑实力全景解析锂化工焚烧炉/氟化热风系统/煤化工热风炉厂家推荐
  • 悲伤 自卑 乖戾 独自哭泣 陪伴空虚 kill my memory 让我将痛苦全忘记
  • 日志 | 2025.10
  • 工程师的 “指尖实验室”!正点原子 LT1 电桥镊子深度测评:同价位竞品谁能打?
  • 【ACM出版|EI检索稳定】2025年AI驱动下:业务转型和数据科学创新国际学术会议(ICBTDS 2025)
  • 破解跨域监控难题:国标GB28181算法算力平台EasyGBS视频调阅技术在跨域安防监控中的核心应用
  • 2025 年电缆桥架源头厂家最新推荐排行榜:聚焦优质供应商核心竞争力,助力工程采购精准选型
  • 2025 年厂房出售公司服务推荐排行榜:珠三角/广州/深圳/东莞/佛山/珠海等城市优质厂房出售公司全面测评解析
  • 构建智能视觉中枢:国标GB28181算法算力平台EasyGBS的全域感知与播放方案
  • 别再乱排查了!Kafka 消息积压、重复、丢失,根源基本都是 Rebalance!
  • 2025年交通杯-爆破题wp
  • 挖象浏览器下载安装教程|支持淘宝、拼多多、抖音多平台账号分区管理
  • 2025 年国内活性炭回收交易公司最新推荐排行榜:实力厂商深度解析,助力企业精准选合作方回收果壳活性炭/回收煤质柱状活性炭/库存各种活性炭公司推荐
  • 2025-10-15 CSP-J 模拟赛 赛后总结【ZROI】
  • 辐射检测仪哪家好?CT剂量模体哪家好?