题目链接 "BZOJ3594" 题解 dp难题总是想不出来,, 首先要观察到一个很重要的性质,就是每次拔高一定是拔一段后缀 因为如果单独只拔前段的话,后面与前面的高度差距大了,不优反劣 然后很显然可以设出$f[i][j]$表示前$i$个玉米,第$i$棵必须选,且共拔高了$j$次的最大值 由之前的性质 ...
分类:
编程语言 时间:
2018-05-14 21:39:04
阅读次数:
246
3594: [Scoi2014]方伯伯的玉米田 Description 方伯伯在自己的农田边散步,他突然发现田里的一排玉米非常的不美。这排玉米一共有N株,它们的高度参差不齐。方伯伯认为单调不下降序列很美,所以他决定先把一些玉米拔高,再把破坏美感的玉米拔除掉,使得剩下的玉米的高度构成一个单调不下降序列 ...
分类:
其他好文 时间:
2018-01-21 19:06:29
阅读次数:
119
Description 方伯伯在自己的农田边散步,他突然发现田里的一排玉米非常的不美。这排玉米一共有N株,它们的高度参差不齐。方伯伯认为单调不下降序列很美,所以他决定先把一些玉米拔高,再把破坏美感的玉米拔除掉,使得剩下的玉米的高度构成一个单调不下降序列。方伯伯可以选择一个区间,把这个区间的玉米全部拔 ...
分类:
其他好文 时间:
2017-10-25 00:42:34
阅读次数:
116
3594: [Scoi2014]方伯伯的玉米田 Description 方伯伯在自己的农田边散步,他突然发现田里的一排玉米非常的不美。 这排玉米一共有N株,它们的高度参差不齐。 方伯伯认为单调不下降序列很美,所以他决定先把一些玉米拔高,再把破坏美感的玉米拔除掉,使得剩下的玉米的高度构成一个单调不下降 ...
分类:
其他好文 时间:
2017-10-07 22:05:26
阅读次数:
121
3594: [Scoi2014]方伯伯的玉米田Time Limit: 60 Sec Memory Limit: 128 MBSubmit: 1437 Solved: 647[Submit][Status][Discuss]Description方伯伯在自己的农田边散步,他突然发现田里的一排玉米非常的 ...
分类:
其他好文 时间:
2017-08-13 00:06:08
阅读次数:
203
我们发现任何最优解都可以是所有拔高的右端点是n,然后如果我们确定了一段序列前缀的结尾和在此之前用过的拔高我们就可以直接取最大值了然后我们在这上面转移就可以了,然后最优解用二维树状数组维护就行了 ...
分类:
编程语言 时间:
2017-07-15 10:05:40
阅读次数:
100
题目大意:对于一个序列,可以k次选任意一个区间权值+1,求最长不下降子序列最长能为多少 其实我根本没想到可以用DP做 f[i][j]表示前i棵,操作j次,最长子序列长度 p[x][y]表示操作x次后,最高玉米为y时的最长子序列长度 那么以n棵玉米分阶段,对于每个阶段 f[i][j]=max{p[k] ...
分类:
编程语言 时间:
2016-05-26 21:47:23
阅读次数:
318
二维树状数组优化dp,复杂度又O(n maxa k) 变成 O(n log(maxa k)) #include #include #include using namespace std; int maxn,n,k,a[10010],ans,tmp; struct BIT { int c[6060]... ...
分类:
其他好文 时间:
2016-05-08 19:49:35
阅读次数:
163
显然可以看出这是一道DP,然后就开始定义状态。。。 f[i][j]表示已经处理完i根玉米,拔高了j次,剩下的玉米的最大值。 f[i][j] = max{f[x][y]+1}(x<i,y<=j,h[x]+y<=h[i]+j)。 于是就可以用二维树状数组维护最大值了,第一维维护拔高次数,第二维维护拔高后
分类:
其他好文 时间:
2016-02-28 12:39:24
阅读次数:
172
题目大意:给定一个序列,可以选择k次区间并将区间内每个数都+1,求操作之后LIS的最大值
我的做法不是标解。。。5E的复杂度为何跑的飞起。。。
首先一个显而易见的结论就是我们选择的k次区间右端点都是n时才能保证最优
知道这个我们就可以DP了- -
令f[i][j]表示前i个数上升j次的最大LIS
那么有f[i][j]=max{f[k][l]|k
看到三维偏序就可以用二维树状数组了- -...
分类:
编程语言 时间:
2015-03-12 17:12:16
阅读次数:
1099