[CSP-S模拟测试]:E(贪心)
题目传送门(内部题48)
输入格式
第一行一个整数$n$。
接下来$n$行每行两个整数$x_i,y_i$。
输出格式
一行一个整数表示答案。
样例
样例输入$1$:
2
3 7
2 5
样例输出$1$:
2
样例输入$2$:
5
5 15
11 16
16 34
2 14
9 17
样例输出$2$:
96
数据范围与提示
样例$1$解释:
第一组球中权值为$3$的球染成红色,权值为$7$的球染成蓝色。
第一组球中权值为$2$的球染成红色,权值为$5$的球染成蓝色。
$(R_{max}-R_{min})\times (B_{max}-B_{min})=(3-2)\times (7-5)=2$
数据范围:
对于前$10\%$的数据:$n\leqslant 20$
对于前$20\%$的数据:$n\leqslant 50$
对于前$40\%$的数据:$n\leqslant 200$
对于前$40\%$的数据:$n\leqslant 2,000$
对于所有数据:
$1\leqslant {10}^5$
$1\leqslant x_i,y_i\leqslant {10}^9$
题解
考虑贪心。
因为所有数中的最大值和最小值肯定会对答案做贡献,所以分为两种情况:
$\alpha.$最大值和最小值不是一种颜色,这时候我们只需要把每一组中的$x_i,y_i$中较小的一个选成蓝色,较大的选成红色即可。
$\beta.$最大值和最小值是一种颜色(设为红色),这时候我们要最小化蓝色的极差,枚举蓝色球的最小值,二分求出最大值即可。
对于这道题的数据,只用考虑情况$\alpha$即可,因为不确定我的代码的情况$\beta$的正确性,所以下面代码只考虑了情况$\alpha$。
时间复杂度:$\Theta(n\log n)$(情况$\alpha$为$\Theta(n)$)。
期望得分:$100$分。
实际得分:$100$分。
代码时刻
#include<bits/stdc++.h>
using namespace std;
int n;
int minr=1<<30,minb=1<<30,maxr,maxb;
int main()
{
scanf("%d",&n);
while(n--)
{
int x,y;
scanf("%d%d",&x,&y);
if(x<y)x^=y^=x^=y;
minr=min(minr,x);
maxr=max(maxr,x);
minb=min(minb,y);
maxb=max(maxb,y);
}
cout<<1LL*(maxr-minr)*(maxb-minb);
return 0;
}
rp++
[CSP-S模拟测试]:E(贪心)的更多相关文章
- csp-s模拟测试99
csp-s模拟测试99 九九归一直接爆炸. $T1$一眼板子. $T2$一眼语文题(语文的唯一一次$120+$是给模拟出来的可知我的语文能力). $T3$一眼普及题. ?? Hours Later 板 ...
- csp-s模拟测试95
csp-s模拟测试95 去世场祭. $T1$:这不裸的除法分块吗. $T2$:这不裸的数据结构优化$Dp$吗. $T3$:这不裸的我什么都不会搜索骗$30$分吗. 几分钟后. 这除法分块太劲了..(你 ...
- csp-s模拟测试92
csp-s模拟测试92 关于$T1$:最短路这一定建边最短路. 关于$T2$:傻逼$Dp$这一定线段树优化$Dp$. 关于$T3$:最小生成树+树P+换跟一定是这样. 深入(?)思考$T1$:我是傻逼 ...
- csp-s模拟测试85
csp-s模拟测试85 $T1$全场秒切没有什么区分度,$T2$全场成功转化题意但是我并不会打,$T3$暴力都没打很遗憾. 100 00:21:49 02:56:35 02:56:49 135 02: ...
- 「题解」NOIP模拟测试题解乱写II(36)
毕竟考得太频繁了于是不可能每次考试都写题解.(我解释个什么劲啊又没有人看) 甚至有的题目都没有改掉.跑过来写题解一方面是总结,另一方面也是放松了. NOIP模拟测试36 T1字符 这题我完全懵逼了.就 ...
- 2019.8.3 [HZOI]NOIP模拟测试12 C. 分组
2019.8.3 [HZOI]NOIP模拟测试12 C. 分组 全场比赛题解:https://pan.baidu.com/s/1eSAMuXk 刚看这题觉得很难,于是数据点分治 k只有1和2两种,分别 ...
- Android单元测试与模拟测试详解
测试与基本规范 为什么需要测试? 为了稳定性,能够明确的了解是否正确的完成开发. 更加易于维护,能够在修改代码后保证功能不被破坏. 集成一些工具,规范开发规范,使得代码更加稳定( 如通过 phabri ...
- [开源]微信在线信息模拟测试工具(基于Senparc.Weixin.MP开发)
目前为止似乎还没有看到过Web版的普通消息测试工具(除了官方针对高级接口的),现有的一些桌面版的几个测试工具也都是使用XML直接请求,非常不友好,我们来尝试做一个“面向对象”操作的测试工具. 测试工具 ...
- 安装nginx python uwsgi环境 以及模拟测试
uwsgi帮助文档: http://uwsgi-docs-cn.readthedocs.io/zh_CN/latest/WSGIquickstart.html http://uwsgi-docs.re ...
- 利用Python中的mock库对Python代码进行模拟测试
这篇文章主要介绍了利用Python中的mock库对Python代码进行模拟测试,mock库自从Python3.3依赖成为了Python的内置库,本文也等于介绍了该库的用法,需要的朋友可以参考下 ...
随机推荐
- 环境变量(windows下tomcat问题);shh连接虚拟机网络配置
环境变量(windows下tomcat问题) 有tomcat有jdk 再配置环境变量:参考 提示:若选择“用户变量”,则本次配置的变量只对该用户有效 若选择“系统变量”,则对所有用户 ...
- 7 August
P1021 邮票面值设计 暴搜各面值. 剪枝1:面值递增,新面值 \(\in[G_{i-1}+1, n\cdot sum]\). 为什么上界不是 \(n\cdot G_{i-1}+1\) 呢? 剪枝2 ...
- 北风设计模式课程---外观模式(Facade)总结
北风设计模式课程---外观模式(Facade)总结 一.总结 一句话总结: 不仅要通过视频学,还要看别的博客里面的介绍,搜讲解,搜作用,搜实例 设计模式都是对生活的抽象,比如用户获得装备,我可以先装备 ...
- Docker容器数据卷volumes-from
定义4个终端: 终端host终端container dc01终端container dc02终端container dc03各个容器之间的关系: 1.启动一个父容器dc01启动一个父容器dc01,并在 ...
- 【原】webpack--plugins,主要解释plugins干了啥
其实呢,plugins是增强webpack的功能, 插件用于bundle文件的优化,资源管理和环境变量的注入, 可以理解为任何loaders不能做的事让它来做, 作用于整个构建过程. 常见的plugi ...
- Oracle 表空间、用户
一.表空间 临时表空间 创建临时表空间范例 CREATE TEMPORARY TABLESPACE duke_temp /* 临时表空间名称:duke_temp */ tempfile 'C:\ora ...
- C++内存修改器开源代码
我们玩单机游戏时,游戏难度可能过大, 或者游戏已经比较熟练,想要增加游戏的玩法,这时候可以使用修改器. 内存式游戏修改器主要对游戏内存修改 修改时有两种方式,一是定时对内存数值进行修改.实现类似锁定的 ...
- do_mmap解读
1: unsigned long do_mmap_pgoff(struct file *file, unsigned long addr, 2: unsigned long len, unsigned ...
- T1218:取石子游戏
[题目描述] 有两堆石子,两个人轮流去取.每次取的时候,只能从较多的那堆石子里取,并且取的数目必须是较少的那堆石子数目的整数倍,最后谁能够把一堆石子取空谁就算赢. 比如初始的时候两堆石子的数目是25和 ...
- 存取cookies
保存: Response.Cookies["OpenID"].Value = wxobj.openid; Response.Cookies["NickName" ...