农民约翰的 N 头奶牛(编号为 1..N)计划逃跑并加入马戏团,为此它们决定练习表演杂技。

奶牛们不是非常有创意,只提出了一个杂技表演:

叠罗汉,表演时,奶牛们站在彼此的身上,形成一个高高的垂直堆叠。

奶牛们正在试图找到自己在这个堆叠中应该所处的位置顺序。

这 NN 头奶牛中的每一头都有着自己的重量 Wi 以及自己的强壮程度 Si。

一头牛支撑不住的可能性取决于它头上所有牛的总重量(不包括它自己)减去它的身体强壮程度的值,现在称该数值为风险值,风险值越大,这只牛撑不住的可能性越高。

您的任务是确定奶牛的排序,使得所有奶牛的风险值中的最大值尽可能的小。

输入格式

第一行输入整数 N,表示奶牛数量。

接下来 N 行,每行输入两个整数,表示牛的重量和强壮程度,第 i 行表示第 i 头牛的重量 Wi 以及它的强壮程度 Si。

输出格式

输出一个整数,表示最大风险值的最小可能值。

数据范围

1≤N≤50000,
1≤Wi≤10,000,
1≤Si≤1,000,000,000

输入样例:

3
10 3
2 5
3 3

输出样例:

2

#include<bits/stdc++.h>
using namespace std;
const int N=50010;
pair<int,int> cow[N];
int main()
{int n;cin>>n;for(int i=0;i<n;i++){int w,s;cin>>w>>s;cow[i]={w+s,w};}sort(cow,cow+n);int res=-2e9,sum=0;for(int i=0;i<n;i++){int  w=cow[i].second,s=cow[i].first-w;res=max(res,sum-s);sum+=w;}cout<<res;
}

贪心——推公式——耍杂技的牛相关推荐

  1. AcWing 125. 耍杂技的牛 (推公式)

    AcWing 125. 耍杂技的牛 农民约翰的N头奶牛(编号为1..N1..N1..N)计划逃跑并加入马戏团,为此它们决定练习表演杂技. 奶牛们不是非常有创意,只提出了一个杂技表演: 叠罗汉,表演时, ...

  2. 每日四题打卡-4.15:耍杂技的牛/贪心绝对值不等式-货仓选址/贪心排序不等式-排队打水/huffman哈夫曼树-合并果子

    耍杂技的牛 具体:https://blog.csdn.net/qq_27262727/article/details/105515507 农民约翰的N头奶牛(编号为1..N)计划逃跑并加入马戏团,为此 ...

  3. ACWing算法基础课-耍杂技的牛

    1. 耍杂技的牛 题目链接: https://www.acwing.com/problem/content/description/127/ 参考文献 C++ 代码 #include <iost ...

  4. AcWing 125. 耍杂技的牛

    题意 奶牛叠罗汉, 这 N 头奶牛中的每一头都有着自己的重量 Wi 以及自己的强壮程度Si 写一个程序确定奶牛排序, 要使得它们的风险值中的最大值尽可能小 第 i 头奶牛的危险系数 = 当前上面所有奶 ...

  5. ACM - 贪心 - 基础(区间问题 + Huffman树 + 排序不等式 + 绝对值不等式 + 推公式)

    贪心 经典母题 1.区间问题 AcWing 905. 区间选点 AcWing 908. 最大不相交区间数量 AcWing 906. 区间分组 AcWing 907. 区间覆盖 2.Huffman树 A ...

  6. 【算法基础26】贪心下——哈夫曼树、排序不等式、绝对值不等式、推公式的思路与应用

    一.合并果子(哈夫曼树) 题目描述:给出n堆不同种类的果子,每堆果子的数量不同,每个果子的重量为1.每次只能合并相邻堆的果子,且花费的体力是果子的重量和.将所有果子合并成一堆,求最小的体力花费. 问题 ...

  7. 贪心---排序不等式、绝对值不等式、推公式

    1.排序不等式 1.1排队打水 #include<iostream> #include<algorithm> #include<cstring> using nam ...

  8. 算法基础之贪心:排序不等式、绝对值不等式、推公式

    文章 1.排序不等式 1.1.排队打水 2.绝对值不等式 2.1.货仓选址 3.推公式 3.3.耍杂技的牛 1.排序不等式 1.1.排队打水 #include <iostream> #in ...

  9. 区间问题,Huffman树,排序不等式,绝对值不等式,推公式

    贪心算法 1区间选点 2哈夫曼树 3排队打水 4货仓选址 5耍杂技的牛 1区间选点 给定 N 个闭区间 [ai,bi],请你在数轴上选择尽量少的点,使得每个区间内至少包含一个选出的点. #includ ...

最新文章

  1. 多线程间通信之AutoResetEvent和ManualResetEvent的原理分析
  2. JAVA中流水账的实现_流水账式java基础Summary
  3. magento php mysql,安装lnmp nginx php mysql环境 -magento
  4. C#数组 动态添加元素
  5. jQueryEasyUi验证
  6. python文本编辑器报错_notepad++编辑器中运行python程序时需要注意的编码格式
  7. 03-25 内存统计
  8. Ubuntu下GPAC(MP4Box)的安装 | 基于MP4Box搭建DASH视频系统
  9. 计算机毕设(附源码)JAVA-SSM交通事故证据交易平台
  10. zookeeper实现动态感知服务器上下线
  11. 有关HTML的小众面试题
  12. 一个人、一瓶酒、半斤肉饼、两杯饮料
  13. Data Matrix码
  14. PRBS码是什么?PRBS生成原理介绍(转)
  15. JAVA汽车租赁系统(JAVA毕业设计)
  16. 非常全面的贝叶斯网络介绍 非常多的例子说明
  17. C#通过函数名字符串执行相应的函数
  18. 关于 C++ 依赖管理
  19. Unity常用事件函数与变量
  20. 高新技术企业申请后多久会出结果呢?

热门文章

  1. 爱浦路IPLOOK 协助 IN Mobile 建成覆盖蒙古全境的 4G 移动网络
  2. uC/OS-IIIFreeRTOS区别
  3. linux/windows_ip查看(公网ip/私网ip)/通过域名查找ip/解读tracert 的返回结果
  4. 网易云课堂 商务英语
  5. 无刷电机控制(1) 霍尔传感器
  6. 自动化测试脚本--测试百度搜索Selenium
  7. 小工具———字符编码转换查看(MFC)
  8. 词向量模型Word2vec原理
  9. 三菱FX5U与西门子S7-1200通过简单CPU通信设置实现以太网通信功能的具体方法步骤
  10. python名字来源于_Python的名字来源于