AOJ731(不等式)
题意:有n(n<=100)个石头,每个石头的价值在Ai~Bi(1<=Ai<=Bi<=10000)之间,将这些石头分给两个人,求两个人的最大总价值差的最小值
分析:
与一般的求最大的最小不同,这里就是取端点问题,所以思路不是从二分出发
设ΣA=SA,ΣB=SB,第一个人的石头的A的总和是A1,B的总和是B1;第二个人的石头的A的总和是A2,B的总和是B2
那么有B1-A2<=D,B2-A1<=D
因为只有两个人,所以有个套路就是统一变量:A2=SA-A1,B2=SB-B1
代入相加得不等式SB-D<=A1+B1<=D+SA
SB和SA都是常数,而中间这个其实就是个背包问题
可以通过背包求出所有能表示出的重量,然后根据重量求出最小的D
因为重量的最大可能值是2e6,所以不能简单地直接两个for求
可以用个vector装进所有可以表示的状态,再由它们推其他状态
时间复杂度O(n^3)
注意,此题在AOJ上需要while(scanf()!=EOF)
AOJ731(不等式)的更多相关文章
- [学习笔记]四边形不等式优化DP
形如$f[i][j]=min{f[i][k]+f[k+1][j]}+w[i][j]$的方程中, $w[\;][\;]$如果同时满足: ①四边形不等式:$w[a][c]+w[b][d]\;\leq\;w ...
- hiho #1223 不等式
#1223 : 不等式 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 给定n个关于X的不等式,问最多有多少个成立. 每个不等式为如下的形式之一: X < C X ...
- hdu 3506 Monkey Party 区间dp + 四边形不等式优化
http://acm.hdu.edu.cn/showproblem.php?pid=3506 四边行不等式:http://baike.baidu.com/link?url=lHOFq_58V-Qpz_ ...
- BZOJ 1010 玩具装箱toy(四边形不等式优化DP)(HNOI 2008)
Description P教授要去看奥运,但是他舍不下他的玩具,于是他决定把所有的玩具运到北京.他使用自己的压缩器进行压缩,其可以将任意物品变成一堆,再放到一种特殊的一维容器中.P教授有编号为1... ...
- Carath\'eodory 不等式
(Carath\'eodory 不等式) 利用 Scharwz 引理及线性变换, 证明: 若函数 $f(z)$ 在圆 $|z|<R$ 内全纯, 在 $|z|\leq R$ 上连续, $M(r)$ ...
- 石子合并(四边形不等式优化dp) POJ1160
该来的总是要来的———————— 经典问题,石子合并. 对于 f[i][j]= min{f[i][k]+f[k+1][j]+w[i][j]} From 黑书 凸四边形不等式:w[a][c]+w[b][ ...
- UVa 10003 (可用四边形不等式优化) Cutting Sticks
题意: 有一个长为L的木棍,木棍中间有n个切点.每次切割的费用为当前木棍的长度.求切割木棍的最小费用. 分析: d(i, j)表示切割第i个切点到第j个切点这段所需的最小费用.则有d(i, j) = ...
- hihocoder #1223 : 不等式 水题
#1223 : 不等式 Time Limit: 1 Sec Memory Limit: 256 MB 题目连接 http://hihocoder.com/problemset/problem/1223 ...
- 【无聊放个模板系列】HDU 3506 (四边形不等式优化DP-经典石子合并问题[环形])
#include<cstdio> #include<cstdlib> #include<cstring> #include<iostream> #inc ...
随机推荐
- CentOS 7 下用 firewall-cmd / iptables 实现 NAT 转发供内网服务器联网
自从用 HAProxy 对服务器做了负载均衡以后,感觉后端服务器真的没必要再配置并占用公网IP资源. 而且由于托管服务器的公网 IP 资源是固定的,想上 Keepalived 的话,需要挤出来 3 个 ...
- JSP(Java Servlet Page)
一.简介 HTML HTML擅长显示一个静态的网页,但是不能调用Java程序. Servlet Servlet擅长调用Java程序和后台进行交互,但是它不擅长显示一个完整的HTML页面. 我们希望创建 ...
- Java多线程编程核心技术---Lock的基本概念和使用
Lock接口: ReentrantLock的基本功能: ReentrantLock的lock和unlock方法进行加锁,解锁.可以起到和synchronized关键字一样的效果: 选择性通知!!!: ...
- HDU_1710_二叉树前序中序确定后序
2018-3-6 按照王道机试书上的思路再做了一遍,先根据先序和中序建树,然后后序遍历. 静态分配数组用于建树,可以返回数组地址当作结点指针. #include<iostream> #in ...
- MyEclipse2017修改Web Context Root
1,复制一个已经存在的项目,并修改项目名 2,选中项目右键选择properities,打开. 但是这里的web context root无法修改 3,删除web显示properties的所有属性,输入 ...
- jquery中ajax原生代码的分析模仿
function ajax(obj){ var defaults = { url: "#", data: {}, type: ...
- Python飞机大战实例有感——pygame如何实现“切歌”以及多曲重奏?
目录 pygame如何实现"切歌"以及多曲重奏? 一.pygame实现切歌 初始化路径 尝试一 尝试二 尝试三 成功 总结 二.如何在python多线程顺序执行的情况下实现音乐和音 ...
- Error opening session. Cause: java.lang.NullPointerExcept.
在学mybatis时遇到这个问题,后面发现时打错了一个字母,发现后分享出来,如果发现这个错误也能够更好的排除错误. 如图可以发现我不小心把default打成了defaule所以出现了这个错误,也找了好 ...
- Oracle 数据库实例启动关闭过程
Oracle数据库实例的启动,严格来说应该是实例的启动,数据库仅仅是在实例启动后进行装载.Oracle数据启动的过程被划分为 几个不同的步骤,在不同的启动过程中,我们可以对其实现不同的操作,系统修复等 ...
- SAX解析XML-例子
1.要解析的xml <?xml version="1.0" encoding="UTF-8"?> <employees> <emp ...