BZOJ 5424: 烧桥计划(单调队列)

该博客介绍了BZOJ5424题目的烧桥计划问题,求解最小代价的算法。通过分析,博主提出两种优化方法:一是利用滚动数组和前缀和优化复杂度到O(n^2),二是根据数据范围限制,进一步优化到O(n log n)。
摘要由CSDN通过智能技术生成

BZOJ5424 烧桥计划

题目链接

题目大意:

给你长为 n n n 的序列 a 1 , a 2 , ⋯   , a n a_1,a_2,\cdots,a_n a1,a2,,an 和一个参数 m m m ,删掉其中若干个位置 p 1 , p 2 , ⋯   , p k p_1,p_2,\cdots,p_k p1,p2,,pk ,耗费 ∑ i = 1 k i ⋅ a p i \sum_{i=1}^{k}i\cdot a_{p_i} i=1kiapi 的代价。序列被分为 k = 1 k=1 k=1 段,对每段求和,若 s u m k > m sum_k>m sumk>m ,则需额外支付 s u m k sum_k sumk 的代价。求最小总代价。 n ≤ 1 0 5 , 1000 ≤ a i ≤ 2000 n\leq 10^5,1000\leq a_i \leq 2000 n105,1000ai

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值