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

三维偏序

题目链接

曼波~

\(\Large \texttt{注意到直接对第一维排序可以去掉一维。}\)
\(\Large \texttt{注意到使用归并排序可以去掉第二维。}\)
\(\Large \texttt{注意到在归并排序的过程中对以第二维为横坐标,第三维为纵坐标二维数点就可以得到答案。}\)
代码:

#include<bits/stdc++.h>
using namespace std;
const int N = 2e5 + 5;
struct node{int x, y, z, ans, cnt;
}a[N], b[N], tp[N]; 
int n, k, s[N], out[N], tot;
bool cmp(node a, node b){if(a.x == b.x && a.y == b.y) return a.z < b.z;return a.x == b.x ? a.y < b.y : a.x < b.x;
}
void modify(int x, int k){for(; x < N; x += x & -x){s[x] += k;}
}
int query(int x){int ans = 0;for(; x; x -= x & -x) ans += s[x];return ans;
}
void merge(int l, int r){int mid = (l + r) >> 1;if(l == r) return;merge(l, mid);merge(mid + 1, r);vector<node> v;for(int i = l; i <= mid; i++){v.push_back(a[i]);modify(a[i].z, a[i].cnt);}for(int i = r; i >= mid + 1; i--){while(!v.empty() && v.back().y > a[i].y){modify(v.back().z, -v.back().cnt);v.pop_back();}a[i].ans += query(a[i].z);}while(!v.empty()) modify(v.back().z, -v.back().cnt), v.pop_back();int i = l, j = mid + 1, cnt = l;while(i <= mid && j <= r){if(a[i].y <= a[j].y) tp[cnt++] = a[i++];else tp[cnt++] = a[j++];}while(i <= mid) tp[cnt++] = a[i++];while(j <= r) tp[cnt++] = a[j++];for(int i = l; i <= r; i++) a[i] = tp[i];
}
int main(){cin >> n >> k;for(int i = 1; i <= n; i++){cin >> b[i].x >> b[i].y >> b[i].z;}sort(b + 1, b + n + 1, cmp);for(int i = 1, last = 0; i <= n; i++){if(b[i].x == b[i + 1].x && b[i].y == b[i + 1].y && b[i].z == b[i + 1].z) continue;b[i].cnt = i - last;last = i;a[++tot] = b[i];}merge(1, tot);for(int i = 1; i <= tot; i++){out[a[i].ans + a[i].cnt - 1] += a[i].cnt;}for(int i = 0; i < n; i++){cout << out[i] << '\n';}return 0;
}
http://www.jsqmd.com/news/412152/

相关文章:

  • SS中的CSRF,passwordEncoder,authenticationProvider,authenticationManager,securityFilterChain几个概念及调用时机
  • mac安装redis_笔记
  • AI开发-python-milvus向量数据库(2-12 -milvus-向量检索)
  • 以智慧科技,筑就全时段护理守护网
  • 基于COMSOL的拓扑光子晶体光学仿真模型研究:探究一维至三维晶格能带与场分布特性
  • 小白程序员必看:OpenClaw带你体验AI“真正干活”的全新革命!
  • 开源必备:Git 仓库敏感日志文件清理与脱敏教程
  • 掌握Tableau,为大数据分析增添助力
  • 2026执业药师备考前瞻:从机构选择到高效复习,一篇说透 - 品牌测评鉴赏家
  • 向量搜索系统的三个核心优化维度:速度、精度与规模
  • TGDZCalc by Scala(40th)
  • 数据库连接池Druid的最佳实践
  • 【联邦学习高级应用】HIPAA技术专题 原理和实现
  • 【2026免费】基于SpringBoot的社区医院信息平台
  • 2026执业药师培训机构避坑不踩雷,零基础也能高效通关 - 品牌测评鉴赏家
  • Java程序员失业转型大模型开发:3个月实现高薪入职,附副业变现秘籍及104G免费学习资源包(收藏)
  • 北京净水器供应商怎么选?专业科普+5家靠谱品牌推荐 - 小坤哥
  • 执业药师考试培训怎么选?吃透这篇少走弯路 - 品牌测评鉴赏家
  • 小白程序员轻松入门RAG,玩转金融大模型情报分析
  • 题解:AT_arc156_f [ARC156F] Make Same Set
  • 宝妈必看|中国十大童装品牌盘点,安全好看还省心 - 品牌测评鉴赏家
  • 2026深圳春节期间值得一看的12个展览
  • 宝妈必看!2026中国十大童装品牌大揭秘 - 品牌测评鉴赏家
  • 2026年GEO优化服务商深度测评报告:从技术实力到效果落地的TOP5优选指南 - 小白条111
  • 大数据里Zookeeper:数据同步的实现原理
  • 2.25
  • 2026年广州GEO优化培训机构选型指南:从实战效果到服务能力的深度测评 - 小白条111
  • 容器内端口冲突问题
  • 2026年GEO优化工具深度测评:从技术到效果的6大主流品牌选型指南 - 小白条111
  • 无人驾驶-202411-智能驾驶-视觉感知后处理04-车道线检测及后处理04:车道线与辅助驾驶功能