题意:中文题意,自行理解;

思路:这个题和hdu 1300 的题很像,算是一种类似于二维的扩展,题目不是很难,但窝发现网上的一些题解有些地方说的不是很清楚,在计算斜率优化式的时候,tzw大牛的博客里适宜j为最优解来进行推导的斜率式,所以最后推出来的是维护小于,所以维护下凸包,而一般大家都习惯用k作为最优解,是所以推出来的式上凸包,谈后就是在前面进行的一些小优化,以及快读,(手动写了一下快读,大概懂了小型的快读原理)

代码:

#include <cstdio>
#include <algorithm>
using namespace std;
typedef long long LL;
int n,cnt;
LL x[50005],y[50005],f[50005];
int que[50005];
struct node{LL x,y;}a[50005];
inline bool cmp(node a,node b)
{if(a.x==b.x)return a.y<b.y;return a.x<b.x;
}
inline double slop(int a,int b)
{return (f[b]-f[a])*1.0/(y[a+1]-y[b+1]);
}int main()
{scanf("%d",&n);for(int i=1;i<=n;i++){scanf("%lld%lld",&a[i].x,&a[i].y);}cnt=0;sort(a+1,a+1+n,cmp);for(int i=1;i<=n;i++){while(cnt&&a[i].y>=y[cnt])cnt--;x[++cnt]=a[i].x;y[cnt]=a[i].y;}
//    for(int i=1;i<=n;i++){
//        printf("test %lld %lld\n",a[i].x,a[i].y);
//    }int l=0,r=0;for(int i=1;i<=cnt;i++){while(l<r&&slop(que[l],que[l+1])<x[i])l++;int t=que[l];f[i]=f[t]+y[t+1]*x[i];while(l<r&&slop(que[r-1],que[r])>slop(que[r],i))r--;que[++r]=i;}printf("%lld\n",f[cnt]);return 0;
}

转载于:https://www.cnblogs.com/lalalatianlalu/p/8532715.html

BZOJ 1597 [Usaco2008 Mar] 土地购买相关推荐

  1. BZOJ 1597: [Usaco2008 Mar]土地购买( dp + 斜率优化 )

    既然每块都要买, 那么一块土地被另一块包含就可以不考虑. 先按长排序, 去掉不考虑的土地, 剩下的土地长x递增, 宽y递减 dp(v) = min{ dp(p)+xv*yp+1 } 假设dp(v)由i ...

  2. bzoj 1597: [Usaco2008 Mar]土地购买(斜率优化dp 例题)

    Description 农夫John准备扩大他的农场,他正在考虑N (1 <= N <= 50,000) 块长方形的土地. 每块土地的长宽满足(1 <= 宽 <= 1,000, ...

  3. bzoj 1597 [Usaco2008 Mar]土地购买——斜率优化dp

    题目:https://www.lydsy.com/JudgeOnline/problem.php?id=1597 又一道斜率优化dp.负数让我混乱.不过仔细想想还是好的. 还可以方便地把那个负号放到x ...

  4. bzoj 1597: [Usaco2008 Mar]土地购买【斜率优化】

    按xy降序排序,把能被完全包含的去掉 然后就得到了x升序y降序的一个数组 然后方程就显然了:f[i]=min(f[j]+y[j+1]x[i]) 斜率优化转移 说起来我还不会斜率优化呢是不是该学一下了 ...

  5. 决策单调性Ⅱ:斜率优化(1597: [Usaco2008 Mar]土地购买)

    决策单调性Ⅰ:四边形不等式: http://blog.csdn.net/jaihk662/article/details/78174717 决策单调性: 对于dp[i] = min(dp[i], dp ...

  6. 【BZOJ 1597】 [Usaco2008 Mar]土地购买 (斜率优化)

    1597: [Usaco2008 Mar]土地购买 Time Limit: 10 Sec  Memory Limit: 162 MB Submit: 3601  Solved: 1322 Descri ...

  7. bzoj1597[Usaco2008 Mar]土地购买

    bzoj1597[Usaco2008 Mar]土地购买 题意: n块土地,现在要求把土地分成几份,每份费用为该份中土地长最大值和宽最大值成绩,要求最小费用.n≤5000 题解: 当一块土地长宽都比另一 ...

  8. BZOJ1597: [Usaco2008 Mar]土地购买(dp 斜率优化)

    题意 题目链接 Sol 重新看了一遍斜率优化,感觉又有了一些新的认识. 首先把土地按照\((w, h)\)排序,用单调栈处理出每个位置第向左第一个比他大的位置,显然这中间的元素是没用的 设\(f[i] ...

  9. bzoj1597 [Usaco2008 Mar]土地购买

    题目描述 题解: 我们可以考虑这样一种情况,有一块$10*10$的土地,还有一块$1*1$的土地. 当然将$1*1$的土地合到$10*10$的土地中了. 所以我们可以先按土地$x$值从大到小排序,然后 ...

最新文章

  1. Android shape 绘制左右 或者上下的渐变色
  2. 70页论文,图灵奖得主Yoshua Bengio一作:“生成流网络”拓展深度学习领域
  3. 分析与解决windows10下上网很慢
  4. 构建之法 阅读笔记01
  5. java任何表达式都可以当作语句_在Java语言中语句用分号终止,并不是所有的表达式都可以构成语句...
  6. Spring Boot和应用程序上下文层次结构
  7. go channel 缓冲区最大限制_Go语言11周年,泛型问题有望明年得到解决
  8. 如何对一个变量数据进行正则判定_生存分析数据中的BuckleyJamesMultipleRegression Model...
  9. 轻量级PHP接口框架PhalApi开源接口框架 v2.17.1源码
  10. C# - winform使用Dictionary的时候,程序一闪而过!
  11. android上传项目到码云_直播开源项目
  12. Java制作屏幕截图软件(还可以保存到剪切板内)
  13. 【知识图谱系列】基于生成式的知识图谱预训练模型
  14. java初学者,应该怎么去学习?
  15. BZOJ1230 [Usaco2008 Nov]lites 开关灯
  16. 微pe工具箱有linux版吗,微PE工具箱
  17. 计算机上机操作表格试题,全国计算机等级考试四Excel电子表格操作试题.doc
  18. Nutch 深入浅出
  19. h5在线聊天室(附源码)
  20. 在微型计算机系统中 视频适配器为,一级计算机基础知识整理解说.xls

热门文章

  1. SQLite学习笔记(三)--创建内存数据库
  2. css + div + js 制作HTML tab control
  3. 《Algorithms》Comparable 实现选择排序
  4. idea用maven启动zookeeper源码
  5. Linux 各种压缩类型文件 解压命令 整理 tar.bz2 tar.gz tgz等等
  6. [转]简明 Nginx Location Url 配置笔记
  7. 人人都是程序员?一边吐槽,一边却偷偷用,低代码工具真香
  8. linux服务器忘记ssh密码_【Linux】配置linux服务器之间ssh不用密码访问
  9. 格子染色问题 java_《Mathematical Olympiad——组合数学》——染色问题
  10. Detectron2和MMDetection的学习笔记