news 2026/5/1 10:11:45

[USACO08MAR] Land Acquisition G题解

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
[USACO08MAR] Land Acquisition G题解

P2900 [USACO08MAR] Land Acquisition G

题目描述

Farmer John 准备扩大他的农场,眼前他正在考虑购买NNN块长方形的土地。

如果 FJ 单买一块土地,价格就是土地的面积。但他可以选择并购一组土地,并购的价格为这些土地中最大的长乘以最大的宽。比如 FJ 并购一块3×53 \times 53×5和一块5×35 \times 35×3的土地,他只需要支付5×5=255 \times 5=255×5=25元, 比单买合算。

FJ 希望买下所有的土地。他发现,将这些土地分成不同的小组来并购可以节省经费。 给定每份土地的尺寸,请你帮助他计算购买所有土地所需的最小费用。

输入格式

第一行一个整数NNN1≤N≤5×1041 \leq N \leq 5 \times 10^41N5×104)。

接下来NNN行,每行两个整数wiw_iwilil_ili,代表第iii块土地的长和宽。保证土地的长和宽不超过10610^6106

输出格式

输出买下所有土地的最小费用。

输入输出样例 #1

输入 #1

4 100 1 15 15 20 5 1 100

输出 #1

500

说明/提示

将所有土地分为三组:

  • 第一块土地为第一组,花费100×1=100100 \times 1=100100×1=100
  • 第二,三块土地为第二组,花费20×15=30020 \times 15=30020×15=300
  • 第四块土地为第三组,花费1×100=1001 \times 100=1001×100=100

总花费为500500500,可以证明不存在更优的方案。

思路

动态规划 DP
斜率优化

代码见下

#include<bits/stdc++.h>usingnamespacestd;longlongn,m=0,ma=0,f[50004];structone{longlongx,y;}a[50004],b[50004];boolcmp(one a1,one b1){if(a1.x!=b1.x){returna1.x>b1.x;}else{returna1.y>b1.y;}}intmain(){cin>>n;for(inti=1;i<=n;i++){cin>>a[i].x>>a[i].y;}sort(a+1,a+n+1,cmp);for(inti=1;i<=n;i++){if(ma<=a[i].y-1){b[++m]=a[i];ma=a[i].y;}}memset(f,62,sizeof(f));f[0]=0;for(inti=1;i<=m;i++){for(intj=max(0,i-1-30000);j<=i-1;j++){if(f[j]+b[j+1].x*b[i].y<f[i]){f[i]=f[j]+b[j+1].x*b[i].y;}//f[i]=min(f[i],f[j]+b[j+1].x*b[i].y);}}cout<<f[m]<<endl;return0;}
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/1 7:36:44

构建高效质量防线:持续测试成熟度模型解析与实践指南

1 持续测试的时代背景与核心价值在敏捷开发与DevOps成为主流的今天&#xff0c;软件发布周期从"月"缩短到"天"甚至"小时"&#xff0c;传统测试方法已难以适应快速交付的需求。持续测试&#xff08;Continuous Testing&#xff09;作为DevOps的关…

作者头像 李华
网站建设 2026/4/27 23:38:50

2025 低代码平台选型指南

随着低代码市场的快速发展&#xff0c;各类低代码平台层出不穷&#xff0c;市场上已形成国内企业级全栈信创类、国际主流型、开源型等多个阵营。面对众多选择&#xff0c;企业很容易陷入 “盲目跟风”“只看价格”“追求功能全面” 等选型误区&#xff0c;最终导致所选平台与业…

作者头像 李华
网站建设 2026/5/1 8:50:46

DateBook v4.9.5 – 功能丰富多语言约会社交 WordPress 主题

DateBook 是世界上唯一一个将国家、地区和城市翻译成多种语言的约会主题。集成了订阅或会员资格功能&#xff0c;无需购买任何额外的订阅或会员插件。 使用集成的 DateBook 订阅通过 PayPal 或 Paystack 网关接受付款&#xff0c;或通过安装支付网关插件通过 WooCommerce 接受…

作者头像 李华
网站建设 2026/5/1 5:02:07

文件上传文件包含学习

1.文件上传由于程序员在对用户文件上传功能实现代码没有严格限制用户上传的文件后缀以及文件类型或者处理缺陷&#xff0c;而导致的用户可以越过其本身权限向服务器上上传可执行的动态脚本文件1.1. 上传漏洞满足条件首先&#xff0c;上传的文件能够被web容器解释执行。所以文件…

作者头像 李华
网站建设 2026/5/1 8:50:59

day41早停策略和模型权重的保存@浙大疏锦行

day41早停策略和模型权重的保存浙大疏锦行 基于day40代码实现模型权重的保存和早停 # 定义损失函数和优化器 criterion nn.CrossEntropyLoss() optimizer optim.Adam(model.parameters(), lr0.001)# 训练参数 num_epochs 1000 check_interval 10 # 每多少轮检查一次验证…

作者头像 李华
网站建设 2026/5/1 10:01:56

[免费]基于Python的Flask+Vue物业管理系统【论文+源码+SQL脚本】

大家好&#xff0c;我是java1234_小锋老师&#xff0c;看到一个不错的基于Python的FlaskVue物业管理系统【论文源码SQL脚本】&#xff0c;分享下哈。 项目视频演示 https://www.bilibili.com/video/BV1AEqpBFExf/ 项目介绍 本文首先实现了基于Python的FlaskVue物业管理系…

作者头像 李华