题目链接:https://cn.vjudge.net/problem/HDU-4296

题意

有很多板子,每一个板子有重量(w)和承重(s)能力

现规定一块板子的PDV值为其上所有板子的重量和减去这个板子的承重能力

整个系统的优劣由每块板子中PDV最大值决定,越小越好

求最好系统的最大PDV值

思路

套路题了,一般问最小化系统最大值,就是从相对位置开始考虑

随便找凉快板子,在第一块板子放下面最优的情况,开始讨论

可得w+s越小的越在上面,排序求值即可

提交过程

AC 套路题

代码

#include <cstdio>
#include <algorithm>
using namespace std;
const int maxn=1e5+20;
struct Node{
long long w, s;
bool operator < (Node &a) const{
return w+s<a.w+a.s;
}
}node[maxn]; int main(void){
int n; while (scanf("%d", &n)==1 && n){
for (int i=0; i<n; i++)
scanf("%lld%lld", &node[i].w, &node[i].s);
sort(node, node+n); long long ans=-node[0].s, tot=node[0].w;
for (int i=1; i<n; i++){
long long res=tot-node[i].s; tot+=node[i].w;
if (ans<res) ans=res;
}printf("%lld\n", ans);
} return 0;
}
Time Memory Length Lang Submitted
546ms 3168kB 610 G++ 2018-06-23 14:24:14

最新文章

  1. Html5的一些基础知识
  2. android 性能优化-电量篇
  3. Redis各类型应用场景
  4. Java程序员的日常 —— Java类加载中的顺序
  5. [原创]Android系统中常用JAVA类源码浅析之HashMap
  6. php验证是否是中文
  7. Hark的数据结构与算法练习之梳排序
  8. JS判断移动设备最佳方法 并实现跳转至手机版网页
  9. 使用select io复用实现超时设置
  10. 组件化CSS--管理你整站的CSS文件
  11. java入门学习(十一)逻辑运算符和位运算符
  12. ajax发送请求
  13. Linux学习 -- Shell基础 -- Bash基本功能
  14. ../../../../.. 太low了
  15. 记一次较坑的eclipse安装AmaterasUML插件经历
  16. 没有系列化导致错误:java.io.NotSerializableException: com.bjpowernode.bean.Team
  17. Python中的闭包 - Closure
  18. Vue.js组件之间的调用
  19. Julia 下载 安装 juno 开发环境搭建
  20. php开启curl不成功原因

热门文章

  1. ZBrush中SnakeHook蛇钩笔刷介绍
  2. 使用Eclipse将项目上传至远程GitLab
  3. 路飞学城Python-Day23
  4. [置顶] Elon Musk (伊隆·马斯克):无限的创想与意志的胜利
  5. IOS - CoreData 增删改查
  6. Parse error: syntax error, unexpected &#39;__data&#39; (T_STRING), expecting &#39;,&#39; or &#39;)&#39;
  7. 安装Nginx的各种报错的解决
  8. Layui父页面向子页面传参
  9. js实现点击复制网页内容(基于execCommand)
  10. js常用事件及事件对象