传送门 一道有趣的DP 题目大意 城镇中有$n$个位置,有$m$个烟花要放.第$i$个烟花放出的时间记为$t_{i}$,放出的位置记为$a_{i}$.如果烟花放出的时候,你处在位置$x$,那么你将收获$b_{i}- \left | a_{i}-x \right |$点快乐值. 初始你可在任意位置,你每个单位时间可以移动不大于$d$个单位距离.现在你需要最大化你能获得的快乐值. 思路:DP+单调队列+滚动数组 有一个显然的动态转移方程: $f_{i,j}=max \left (f_{i,j},f_…
A festival will be held in a town's main street. There are n sections in the main street. The sections are numbered 1 through n from left to right. The distance between each adjacent sections is 1. In the festival m fireworks will be launched. The i-…
题目大意 一条街道有$n$个区域. 从左到右编号为$1$到$n$. 相邻区域之间的距离为$1$. 在节日期间,有$m$次烟花要燃放. 第$i$次烟花燃放区域为$a_i$ ,幸福属性为$b_i$,时间为$t_i$.$t_i \leqslant t_{i+1}$ 如果你在第$i$次烟花发射时在$x(1\leqslant x \leqslant n)$处,你将获得幸福值$b_i - | a_i - x |$ (请注意,幸福值可能是负值). 你可以在单位时间间隔内移动最多$d$个单位,但禁止走出主要街道…
突然发现我可能单调队列都打不来了...我太菜了... 这道题显然有$$f[i][j]=min\{f[i-1][k]+\vert j-a[i] \vert\}$$ 则$ans=\sum_{i=1}^{m} b_i - min_{j=1}^{n}\{f[m][j]\}$ 令$len=(t[i]-t[i-1])*d$则其中k满足$$k∈[j-len,j+len]$$ $f[i][]$只与$f[i-1][]$有关,所以可以把第一维压掉 不难弄出一个$O(n^2m)$的代码: #include<bits/…
一.Watching Fireworks is Fun(紫题) 题目:一个城镇有n个区域,从左到右1编号为n,每个区域之间距离1个单位距离节日中有m个烟火要放,给定放的地点ai,时间ti当时你在x,那么你可以获得∣bi-ai-x∣的幸福值,你每个单位时间可以移动不超过d个单位距离.你的初始位置是任意的(初始时刻为1),求你通过移动能获取到的最大的开心值. 题目大意:有n个点,在这之中有m个点有烟花,分别会在t时刻燃放,每个烟花的幸福值是b.每一个单位时间内人可以走d个单位距离,起始点任意,在x位…
C. Watching Fireworks is Fun time limit per test 4 seconds memory limit per test 256 megabytes input standard input output standard output A festival will be held in a town's main street. There are n sections in the main street. The sections are numb…
http://codeforces.com/contest/373/problem/E E. Watching Fireworks is Fun time limit per test 4 seconds memory limit per test 256 megabytes input standard input output standard output A festival will be held in a town's main street. There are n sectio…
C. Watching Fireworks is Fun 题目大意: 一个城镇有n个区域,从左到右1-n,每个区域之间距离1个单位距离.节日中有m个烟火要放,给定放的地点a[ i ].时间t[ i ] ,如果你当时在区域x,那么你可以获得b[ i ] - | a[ i ] - x |的happiness .你每个单位时间可以移动不超过d个单位距离,你的初始位置是任意的,求你通过移动能获取到的最大的happiness值. 我感觉很难,而且其实也不是特别熟悉单调队列,对于单调队列的运用也不是特别熟练…
C. Watching Fireworks is Fun time limit per test 4 seconds memory limit per test 256 megabytes input standard input output standard output A festival will be held in a town's main street. There are n sections in the main street. The sections are numb…
0. 前言 写完这篇文章后发现自己对于 DP 的优化一窍不通,所以补了补 DP 的一些优化,写篇 blog 总结一下. 1. 单调队列/单调栈优化 1.2 算法介绍 这应该算是最基础的 DP 优化方法了. 顾名思义,单调队列/单调栈优化 DP 就是保持容器内元素的单调性,以达成减少冗余状态的目的. 举单调队列的例子来说,当一个元素的两种属性(例如下标和权值)都优于另一元素时,就可以用此元素更换掉另一元素.这也正是 OI 界流传说法"当一个人比你小且比你强时,你就被弹出单调队列了"的原理…