1 条题解
-
0
题解
思路
任意双调排列的峰值必然是 。选定峰值左侧出现的值集合 后,排列被唯一确定: 升序、然后是 、剩余元素降序。双调峰值不得在两端,所以 。
设 。值 在排列中的位置为
$$pos(v)=\begin{cases}c_v,&v\in L,\\1+n-v+c_v,&v\notin L.\end{cases}$$而 。
做法
子任务 1 枚举 的全排列,检查双调性与两个固定位置。
子任务 2 枚举 的所有子集,按上式计算 的位置。
满分做法枚举 和 (若小于 )是否属于 。固定归属后,上式直接给出处理到 或 时已选元素数的要求。按数值从 到 做选/不选 DP,在两个检查点只保留所需选取数的状态。最后若 或 ,再检查 是否等于相应位置。
复杂度
满分算法时间复杂度 ,空间复杂度 。
- 1
信息
- ID
- 1341
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 10
- 标签
- 递交数
- 1
- 已通过
- 1
- 上传者