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

【代码】P6283 [USACO20OPEN] The Moo Particle S [思维]

学校模拟赛,第一版打了个 50 分并查集:

#include<bits/stdc++.h>
using namespace std;const int N = 1e5 + 10;struct node {int x, y;
} a[N];int fa[N];int findfa(int x) {if (fa[x] == x) {return x;}return fa[x] = findfa(fa[x]);
}bool cmp (node n1, node n2) {if (n1.x != n2.x) return n1.x < n2.x;else return n1.y < n2.y;
}int main () {ios::sync_with_stdio(false);cin.tie(0);int n;cin >> n;for (int i = 1; i <= n; i ++) {cin >> a[i].x >> a[i].y;fa[i] = i;}sort(a + 1, a + n + 1, cmp);for (int i = 1; i <= n; i ++) {for (int j = i + 1; j <= n; j ++) {if (a[i].y <= a[j].y) {int tx = findfa(i), ty = findfa(j);if (tx != ty) {fa[tx] = ty;}}}}int sum = 0;for (int i = 1; i <= n; i ++) if (fa[i] == i) {sum ++;}cout << sum << "\n";return 0;
}

考虑将点集按 x 从小到大排序,第二关键字 y 也是从小到大。

设 l[i] 为下标 1 到 i 最小 y 值,r[i] 为下标 n 到 i 的最大 y 值。

如果 l[i] > r[i + 1],代表 [1, i] 的 y 整体大于 [i + 1, n] 的 y,

但 [1, i] 的 x 又整体小于等于 [i + 1, n] 的 x,所以两者不可能在一联通块,ans ++。

然后最开始只有一个连通块,ans = 1。

代码:

#include<bits/stdc++.h>
using namespace std;const int N = 1e5 + 10;int l[N], r[N]; struct Part {int x, y;
} a[N];bool cmp(Part pa, Part pb) {if (pa.x != pb.x) {return pa.x < pb.x;}else {return pa.y < pb.y;}
}int main () {ios::sync_with_stdio(false);cin.tie(0);int n;cin >> n;for (int i = 1; i <= n; i ++) {cin >> a[i].x >> a[i].y;}sort(a + 1, a + n + 1, cmp);l[1] = a[1].y;for (int i = 2; i <= n; i++) {l[i] = min(l[i - 1], a[i].y);}r[n] = a[n].y;for (int i = n - 1; i >= 1; i --) {r[i] = max(r[i + 1], a[i].y);}int sum = 1;for (int i = 1; i < n; i ++) {if (l[i] > r[i + 1]) {sum ++;}}cout << sum << "\n";return 0;
}

http://www.dtcms.com/a/457186.html

相关文章:

  • linux信号(14)——SIGALRM:从“手机闹钟”看SIGALRM:进程的非阻塞定时神器
  • AJAX JSON 实例
  • 昆山做网站费用做精美得ppt网站知乎
  • 聊聊[自己制作手机 之 特别注意事项]
  • 量子通信:从“不可克隆”到“可证明安全”的信息传递新范式
  • 国内外主流的免费计算资源平台
  • XQuery 术语详解
  • 如何快速建一个网站网站内容建设的原则
  • AI 生态平台化加速
  • 【ThreeJs】【性能优化】从渲染底层到业务逻辑的系统性提速方案
  • C++ STL 向量(vector)学习笔记:从基础到实战
  • 营销网站html中国菲律宾最新消息
  • Spring Boot Web环境测试配置
  • Java SpringMVC(一) --- 建立连接,请求,获取Cookie,Session,Header
  • 【传奇开心果系列】基于Flet框架实现的允许加载本地图片的圆形头像自定义组件模板特色和实现原理深度解析
  • 大模型——ChatGPT 变身 App Store,对话即应用的时代到了
  • leetcode 70.爬楼梯
  • 【LeetCode 热题 100】No.283—— 移动零
  • 旅游景点网站策划书香河住房与建设局网站
  • jvm双亲委派的含义
  • 【linux内核驱动day06-I2C】
  • Photoshop - Photoshop 工具栏(10)透视裁剪工具
  • 一种基于 RK3568+AI 的国产化充电桩安全智能交互终端的设计与实现,终端支持各种复杂的交互功能和实时数据处理需求
  • SSM动漫衍生品交易平台z25so(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。
  • Canny边缘检测算法详解
  • 不止是 Python:聊聊 Node.js/Puppeteer 在爬虫领域的应用
  • MCP协议深度解析:AI时代的通用连接器
  • 首钢建设网站网站源码程序修改
  • Doris专题11- 数据导入概览
  • 厦门优化网站排名合肥网站改版