当前位置: 首页 > news >正文

LG11793

注意到 \(N \times M \le 2\times 10^7\),因此不难得到一个 dp 做法。设 \(f_i\) 表示把前 \(i\) 个橙子装进箱子内的最小成本,则不难得到以下转移式:

\[f_i=\min_{i-j\le m,0 \le j < i} f_j+k+ ( i - j ) \times ( \max_{j < k \le i} a_k - \min_{j < k \le i} a_k ) \]

同时注意到最大最小值可以在倒着枚举 \(j\) 的时候顺便求出来,因此也容易做到时间复杂度 \(O(NM)\)

#include <iostream>
#include <cstdio>
#define ll long long
#define N 200010using namespace std;int n,m,k;
ll f[N],a[N],mx,mi;int main()
{cin >> n >> m >> k;for( int i = 1 ; i <= n ; i ++ )cin >> a[i];for( int i = 1 ; i <= n ; i ++ ){f[i] = f[i - 1] + k;mx = mi = a[i];for( int j = i - 1 ; j >= max( i - m , 0 ) ; j -- ){f[i] = min( f[i] , f[j] + k + ( i - j ) * ( mx - mi ) );mx = max( mx , a[j] ),mi = min( mi , a[j] );}// cout << f[i] << endl;}cout << f[n];return 0;
}
http://www.wxhsa.cn/company.asp?id=1662

相关文章:

  • ABC394G
  • MX 炼石 2026 NOIP #5
  • 0126_状态模式(State)
  • Visual Studio 2026 预览体验版现已发布,一起来看看带来哪些新功能!
  • 基于RK3568/RK3576/RK3588/全志H3/飞腾芯片/国产UOS等/国标GB28181监控系统
  • Go语言读写锁(RWMutex)底层原理详解
  • 【GitHub每日速递】无需提示词!Nano Bananary香蕉超市:AI绘画玩法多到停不下来
  • 小题狂练 (J)
  • Drift数据库开发实战:类型安全的SQLite解决方案
  • DELPHI FireDAC连接EXCEL文件
  • 读人形机器人09教育行业
  • PHP判断字符串是否包含中文
  • 当我们红尘作伴,活得潇潇洒洒
  • 诡异的mysql8的问题
  • 二叉树理论
  • 支付中心的熔断降级要怎么做
  • 协议版iM蓝号检测,批量筛选iMessages数据,无痕检测是否开启iMessage服务
  • 栈和队列总结
  • 工业互联网认知实训台-一句话介绍
  • 湾区杯 SilentMiner WP
  • Python-课后题题目-1.1编程世界初探
  • Python-课后题题目-1.2初识python语言
  • node和npm相关的记录
  • 在Spring boot 中使用@master 设置主从数据库
  • 设计模式-装饰器模式 - MaC
  • 【API接口】最新可用河马短剧接口
  • 第 16 章反射(reflection)
  • 自我介绍+软工5问
  • 电容器+动生电动势+自由落体模型
  • 引用(reference)