传送门

##解题思路
  首先肯定是先处理$b>a$的,这样可以获得更多空间。处理时要先处理$a$比较小的,再处理$a$比较大的,因为要求最小值,而$b>a$的总量是确定的,那么就让每步尽量小。后处理$b<a$时,要先处理$b$比较大的,这样可以有更多空间。

##代码


#include<iostream>
#include<cstdio>
#include<cstring>
#include<cmath>
#include<algorithm> using namespace std;
const int N=1000005;
typedef long long LL; template<class T> void rd(T &x){
x=0;char ch=getchar();
while(!isdigit(ch)) ch=getchar();
while(isdigit(ch)) x=(x<<1)+(x<<3)+ch-'0',ch=getchar();
} int n,cnt1,cnt2;
struct Data{
int a,b;
}t1[N],t2[N]; inline bool cmp1(Data A,Data B) {return A.b>B.b;}
inline bool cmp2(Data A,Data B) {return A.a<B.a;} int main(){
rd(n);int x,y;LL Max=0,now=0;
for(int i=1;i<=n;i++) {
rd(x),rd(y);
if(y-x>=0) t1[++cnt1].a=x,t1[cnt1].b=y;
else t2[++cnt2].a=x,t2[cnt2].b=y;
}
sort(t1+1,t1+1+cnt1,cmp2);sort(t2+1,t2+1+cnt2,cmp1);
for(int i=1;i<=cnt1;i++) {
if(now<t1[i].a) Max=max(Max,(LL)t1[i].a-now);
now=now-t1[i].a+t1[i].b;
}
for(int i=1;i<=cnt2;i++){
if(now<t2[i].a) Max=max(Max,(LL)t2[i].a-now);
now=now-t2[i].a+t2[i].b;
}
printf("%lld\n",Max);
return 0;
}

BZOJ 4619: [Wf2016]Swap Space(贪心)的更多相关文章

  1. 【bzoj4619】[Wf2016]Swap Space 贪心

    题目描述 你有许多电脑,它们的硬盘用不同的文件系统储存数据.你想要通过格式化来统一文件系统.格式化硬盘可能使它的容量发生变化.为了格式化,你需要买额外的硬盘.当然,你想要买容量最小的额外储存设备以便省 ...

  2. bzoj4619 4619: [Wf2016]Swap Space

    传送门 分析 首先不难想到我们要先处理容量变大的再处理容量变小的 对于第一种情况我们自然要选择x小的先格式化,因为这个样暂时存储所需空间较小,可以使得情况更优 而第二种情况y先考虑,因为这样对总空间的 ...

  3. 【BZOJ4619/3709】[Wf2016]Swap Space/[PA2014]Bohater 贪心

    [BZOJ4619][Wf2016]Swap Space Description 你有许多电脑,它们的硬盘用不同的文件系统储存数据.你想要通过格式化来统一文件系统.格式化硬盘可能使它的容量发生变化.为 ...

  4. Zabbix报告无交换内存主机 Lack of free swap space on xxxxx

    [root@xx ~]# free -m total used free shared buffers cached Mem: 3832 3488 343 0 267 2389 -/+ buffers ...

  5. UNIX / Linux: 2 Ways to Add Swap Space Using dd, mkswap and swapon

    UNIX / Linux: 2 Ways to Add Swap Space Using dd, mkswap and swapon by RAMESH NATARAJAN on AUGUST 18, ...

  6. zabbix Lack of free swap space

    Zabbix初始设计是大型公司用于监控服务器集群的,但日常中也用于监控VPS或云主机.后者情况下Zabbix的很多配置和属性就没有经过优化,取决于监控的对象和用途,经常需要对一些Zabbix配置进行调 ...

  7. centos 安装oracle 报Checking swap space: 0 MB available, 150 MB required. Failed <<<<

    1 系统环境 centos 6.5 oracle 11g 内存 16G 硬盘 ssd 250G 2 运行安装命令: [oracle@localhost database]$ ./runInstalle ...

  8. Linux交换空间(swap space)

    每次安装Linux的时候,都会要求配置交换分区,那么这个分区是干嘛的呢?不设置这个分区有什么后果?如果一定要设置,设置多大比较合适?本篇将试图回答这些问题并尽量覆盖所有swap相关的知识. 下面的所有 ...

  9. zabbix server监控报主机 Lack of free swap space

    zabbix server监控报主机 Lack of free swap space,因为交换空间不足引起.该主机内存为3G,正常交换空间大小为物理内存2倍左右. #查看已有内存及交换空间 free ...

随机推荐

  1. delphi String 与 Stream的互转

    stream1   :=   TStringStream.create(str); str   :=   TStringStream(stream1).DataString; Stream 是抽像类, ...

  2. 华为交换机telnet配置

    1.在路由器上和交换机相连的借口上配置一个IP地址:比如192.168.1.1 24 2.在交换机上配置如下:<switch>system-view[switch]vlan 10[swit ...

  3. php面试专题---4、流程控制考点

    php面试专题---4.流程控制考点 一.总结 一句话总结: 理解循环内部机制(指针操作),更易于记忆foreach的reset特性,分支结构中理解了switch...case的执行步骤(跳转表)也就 ...

  4. php面试专题---3、运算符考察点

    php面试专题---3.运算符考察点 一.总结 一句话总结: 逻辑运算符注意短路效果,优先级问题直接用括号,还要注意 ||和&&与or和and的优先级不同 1.foo()和@foo() ...

  5. Linux 学习 (五) DNS配置

    没有配置DNS会引起的问题 yum命令 ssh命令等不能进行 错误: Could not resolve host: centos.ustc.edu.cn; 本文例子: CentOS7 下DNS配置 ...

  6. shell查词典

    curl http://cn.bing.com/dict/search?q=spawn -s | sed -e '{s/<\/span>/&\n/g}' | sed -n '{/& ...

  7. 最长回文子串 —— Manacher (马拉车) 算法

    最长回文子串 回文串就是原串和反转字符串相同的字符串.比如 aba,acca.前一个是奇数长度的回文串,后一个是偶数长度的回文串. 最长回文子串就是一个字符串的所有子串中,是回文串且长度最长的子串. ...

  8. shell ## %% 变量内容的删除、替代和替换

    这个写的很清楚: https://www.cnblogs.com/zhaosunwei/p/6831529.html 自己的理解:以后补充 从前向后删除 # 符合替换字符的“最短的”那个 ## 符合替 ...

  9. cpupower:Shows and sets processor power related values

    软件包: * sys-power/cpupower Latest version available: Latest version installed: Size of files: KiB Hom ...

  10. 用其他音乐源帮帮网易云,Windows听歌利器

    镜像文章 1.用其他音乐源帮帮网易云,Ubuntu听歌利器 2.用其他音乐源帮帮网易云,Android听歌利器 只剩下Windows端了,一并送上. 1.Windows懒人版 1.1第一种懒人方法 下 ...