首页 > 其他分享 >P3592 [POI2015] MYJ

P3592 [POI2015] MYJ

时间:2024-03-23 21:14:04浏览次数:32  
标签:le POI2015 P3592 最小值 MYJ 转移

P3592 [POI2015] MYJ

要求总和最大,有两张思路:贪心和 dp。稍微想一下,发现贪心思考量太大,考虑 dp

观察 n 的数据范围,以及转移方式,可以想到区间 dp

发现转移跟区间最小值有关,设 \(f_{l,r,k}\) 为区间 \([l,r]\) 中最小值不小于 \(x\) 的答案。

转移枚举最小值的位置 \(p\),\(f_{l,r,k}=\max(f_{l,p-1,k}+f_{p+1,r,k}+cost(l,r,p,i))\)

\(cost(l,r,p,i)\) 表示最小值在 \(p\) 处时的贡献,即 \(l\le a_i\le p\le b_i\le r\) 且 \(c_i\ge k\) 的数量。转移时预处理 \(buc_{l,r}\) 表示 \([l,r]\) 中的区间数量即可。

还有转移 \(f_{l,r,k}=f_{l,r,k+1}\),容易理解。

现在的复杂度为 \(O(n^3\max(c_i))\),无法通过。发现对于每个位置,我们都只会选择在 \(c_i\) 中出现过的,否则一定不优。所以离散化 \(c_i\),复杂度降到 \(O(n^3m)\),可以通过。

答案为 \(f_{1,n,1}\)。

考虑打印方案,只需要在转移时记录断点以及断点处的值,dfs 一遍即可。

标签:le,POI2015,P3592,最小值,MYJ,转移
From: https://www.cnblogs.com/FireRaku/p/18091676

相关文章

  • 洛谷 P3596 [POI2015] MOD 题解
    题意简述给定一棵树,求断掉一条边再连上一条边所得的新树直径最小值和最大值,以及相应方案(你可以不进行任何操作,即断掉并连上同一条边)。题目分析假设我们枚举断掉某一条边,得到了两棵树,并且知道它们的直径分别为\(d_0,d_1\),那么如何连接一条边让新树的直径最大/最小呢?最大:显......
  • [POI2015] LOG
    点击查看代码#include<bits/stdc++.h>usingnamespacestd;inta[1000005];introot,tot;intread1(){ charcc=getchar(); while(!(cc>=48&&cc<=57)) { if(cc=='-') { break; } cc=getchar(); } boolf=false; ints=0; if......
  • P3586 [POI2015] LOG
    原题先写我复杂度错误的一个思路:首先每次选最小的\(c\)个做显然是优秀的,贪心性质显然,打表找一下答案?12302-13-1+11003-24-2+1+2-120004-3+15-3+2+3-23......
  • 【题解】[POI2015] MOD
    传送门挺恶心的感觉这题代码,就来写写题解。题目分析假设我们现在要删掉\((x,y)\)这条边,思考这样能贡献的最大或最小直径。不难发现,此时一棵树分裂成了两棵树\(a,b\),我们令它们的直径分别为\(la,lb\)。将两棵树内直径的任意端点连起来,发现\(maxi=la+lb+1\)。将两棵树内直......
  • P3592 [POI2015] MYJ
    题目描述有\(n\)家洗车店从左往右排成一排,每家店都有一个正整数价格\(p_i\)。有\(m\)个人要来消费,第\(i\)个人会驶过第\(a_i\)个开始一直到第\(b_i\)个洗车店,且会选择这些店中最便宜的一个进行一次消费。但是如果这个最便宜的价格大于\(c_i\),那么这个人就不洗车了。......
  • POI2015
    KUR首先设\(z=ai+b\),考虑求出\(z\)的范围。假设序列的第\(j\)位为\(1\),则\(z+a(j-1)\geqp\),即将\([p,n)\)区间向左循环位移\(a(j-1)\),然后对所有这样的区间取交。由于循......
  • 题解 洛谷 P3594 [POI2015] WIL
    1.题面描述题目链接给定一个长度为\(n\)的序列,你有一次机会选中一段连续的长度不超过\(d\)的区间,将里面所有数字全部修改为\(0\)。请找到最长的一段连续区间,使得该......
  • TypeScript中使用NodeJs日期格式化库myjs-common
    依赖包安装#安装myjs-common包[email protected]格式器表达式YEAR_FORMAT:年格式化-yyyyMONTH_FORMAT:月格式化-yyyy-MMDATE_FORMAT:日期格式化-yyyy-MM-ddH......
  • BZOJ3747-[POI2015]Kinoman
    Description共有m部电影,编号为1~m,第i部电影的好看值为w[i]。在n天之中(从1~n编号)每天会放映一部电影,第i天放映的是第f[i]部。你可以选择l,r(1<=l<=r<=n),并观......
  • 洛谷 P3592
    首先不难发现最终答案中只会出现\(c_i\)中的数,所以可以将\(c_i\)离散化。设\(f_{i,j,k}\)表示区间\([l,r]\),最小值不小于\(k\)的最大收益,\(cnt_{i,j}\)表示区间......