
【算法】斜率优化
文章平均质量分 76
cz_xuyixuan
这个作者很懒,什么都没留下…
展开
-
【CodeForces】CodeForces Round #463 (Div. 1 + Div. 2) 题解
【比赛链接】点击打开链接【题解链接】点击打开链接【A】Palindromic Supersequence【思路要点】将字符串正反各打印一遍。时间复杂度\(O(|A|)\)。【代码】#include<bits/stdc++.h>using namespace std;const int MAXN = 5005;template <typename T> void rea...原创 2018-02-22 10:46:55 · 617 阅读 · 0 评论 -
【USACO】2019 February Contest, Platinum题解
**【T1】**Cow Dating【题目链接】点击打开链接【题解链接】点击打开链接【思路要点】考虑如何快速计算一个区间 [l,r][l,r][l,r] 的价值。定义二元组 (x,y)(x,y)(x,y) 来描述一个区间, xxx 表示区间中恰好有一个关键点的概率, yyy 表示区间中没有关键点的概率。显然,对于两个区间 (x1,y1),(x2,y2)(x_1,y...原创 2019-02-27 10:33:59 · 1335 阅读 · 1 评论 -
【CodeForces】CodeForces Round #503 (Div. 1) 题解
【比赛链接】 点击打开连接 【题解链接】 点击打开链接 **【A】**Elections 【思路要点】 考虑枚举111号党派最终的得票,剩余部分我们可以通过贪心解决: 对于每一个得票数高于111号党派的党派,贪心地改变其代价最小的若干投票。 然后贪心地改变所有投票中代价最小的若干投票来补足111号党派的得票。 ...原创 2018-08-15 15:30:37 · 439 阅读 · 0 评论 -
【BZOJ4073】【WF2014】Buffed Buffet
【题目链接】 点击打开链接 【思路要点】 先考虑CCC类食物,我们可以得出一个显然的DP做法。 令dpi,jdpi,jdp_{i,j}表示考虑了前iii种食物,选取了恰好jjj个单位质量的物品,能够得到的最大美味值之和。 有转移: dpi,j=maxwi|j−k,k≤j{dpi−1,k+j−kwi∗ti−j−kwi∗(j−kwi−1)∗δt2}d...原创 2018-07-04 20:41:25 · 639 阅读 · 0 评论 -
【BZOJ5077】【UOJ198】【CTSC2016】时空旅行
【题目链接】BZOJUOJ【思路要点】我们发现所有星球的\(y\)和\(z\)坐标没有实质作用,问题仅和\(x\)和\(c\)有关。令询问给出的横坐标为\(qx\),那么一个属性为\((x,c)\)的星球被探索的代价为\((qx-x)^2+c=qx^2-2x*qx+(x^2+c)\)。显然\(qx^2\)只和询问有关,因此我们需要求\(-2x*qx+(x^2+c)\)的最小值,令\(k=-2x,b...原创 2018-06-04 13:38:24 · 309 阅读 · 0 评论 -
【BZOJ4700】适者
【题目链接】点击打开链接【思路要点】显然的一点是可以将各点的\(D_i\)替换为\(\lfloor\frac{D_i-1}{ATK}\rfloor+1\),即需要的攻击次数。首先考虑没有秒杀怎么做,我们需要确定一个攻击顺序,依次攻击并消灭敌人。如果我们已经确定了一个顺序,如果交换\(i\)和\(i+1\)能够使得方案更优,那么应当有\(A_{i+1}*D_i>D_{i+1}*A_i\),即\...原创 2018-03-26 16:06:32 · 675 阅读 · 0 评论 -
【BZOJ3963】【WF2011】MachineWorks
【题目链接】点击打开链接【思路要点】按照\(G_i\)对机器排序,斜率优化DP即可。时间复杂度\(O(NLog{N})\)。也可以按\(D_i\)排序,用Splay或CDQ分治支持询问。【代码】#include<bits/stdc++.h>using namespace std;#define MAXN 100005struct info {long long d, p, r, ...原创 2018-03-25 17:01:21 · 301 阅读 · 0 评论 -
【BZOJ3672】【UOJ7】【NOI2014】购票
【题目链接】BZOJUOJ【思路要点】令\(f_i\)表示从\(i\)出发到根节点的最小花费,\(s_i\)表示根节点到节点\(i\)的路径长度之和。那么,显然有方程:$$f_i=min_{s_i-l_i≤s_j}\{f_j+(s_i-s_j)p_i+q_i\}$$$$f_i=min_{s_i-l_i≤s_j}\{f_j-s_jp_i\}+s_ip_i+q_i$$其中\(j\)是\(i\)的一个祖...原创 2018-03-01 15:24:13 · 343 阅读 · 0 评论 -
【BZOJ1010】【HNOI2008】玩具装箱toy
【题目链接】点击打开链接【思路要点】状态\(F_{i}\)表示把前\(i\)个玩具装箱的最小费用,\(S_{i}\)为\(C_{i}\)的前缀和。则有以下转移方程:$$F_{i}=min_{j=1}^{i}\{F_{j-1}+(i-j+S_{i}-S_{j-1}-L)^2\}$$令\(A_{i}=i+S_{i}-L\),\(B_{j}=j+S_{j-1}\),用\(F_{j,i}\)表示前\(i\...原创 2018-02-18 20:06:42 · 300 阅读 · 0 评论 -
【BZOJ3675】【APIO2014】序列分割
【题目链接】点击打开链接【思路要点】凸优化 + 决策单调性优化 dpdpdp 。时间复杂度 O(NLogVLogN)O(NLogVLogN)O(NLogVLogN) 。【代码】#include<bits/stdc++.h>using namespace std;const int MAXN = 2e5 + 5;typedef long long ll...原创 2019-04-26 18:10:57 · 249 阅读 · 0 评论