首页 > 其他分享 >【CF1988F Heartbeat】--很厉害的拆式子题qwq

【CF1988F Heartbeat】--很厉害的拆式子题qwq

时间:2024-11-04 21:08:13浏览次数:2  
标签:begin 前缀 -- sum CF1988F times Heartbeat aligned 最大值

常用DP技巧

  1. 前 \(i-1\) 个到前 \(i\) 个,在末尾加入(钦定了相对顺序)

  2. 以一个分界线(一般为最值),将序列分开,然后插入(一般为最值),两个子段互比

  3. 计数 DP 拆式子:有共同变量的不必每次枚举,提出来预处理,优化时间复杂度

思路

看到前缀最大值 \(\to\) 将最大值提出来 \(\to\) 左侧只有前缀最大,右侧后缀最大 \(\to\) 形似插板的计数DP

先做左侧,\(f_{i,x,y}\) 为已有 \([1,i]\),前缀最大值为 \(x\) 个,已有 \(y\) 个上升索引,转移考虑插入 \(i\)

开头:\(f_{i,x,y}\to f_{i + 1, x + 1, y}\)

末尾:\(f_{i,x, y} \to f_{i + 1, x, y}\)

上升间隔:\(f_{i + 1, x, y}\leftarrow f_{i, x, y} \times y\)

下降间隔: \(f_{i + 1, x, y + 1} \leftarrow f_{i, x, y} \times (i - y - 1)\)

加上滚动数组,空间 \(O(n^2)\),时间 \(O(n^3)\)

那么对于长度为 \(n\) 的答案

\[\begin{aligned}ans_n=\sum_{p=1}^{n}\sum_{i=0}^{p-1}\sum_{j=0}^{n-p}\sum_{x=0}^{p-1}\sum_{y=0}^{n-p}C^{p-1}_{n-1}\times f_{p-1,i,x}\times g_{n-p,j,y}\times a_{i+1}\times b_{j+1}\times c_{x+y+[p>1]}\end{aligned} \]

由于前缀最大值之和左边有关,后缀最大值之和右边有关,发现 \(f_{p- 1,i, x}\times a_{i + 1}\) 只有 3 个变量不同,于是可以预处理合并这两项为 \(u_{p,x} = \sum_{i=0}^{p-1}f_{p-1, i, x} \times a_{i + 1}\)

类似的,处理出 \(v_{j, y}\),于是:

\[\begin{aligned} ans_n=\sum_{p=1}^{n}\sum_{x=0}^{p-1}\sum_{y=0}^{n-p}C^{p-1}_{n-1}\times u_{p-1,x}\times v_{n - p, y} \times c_{x+y+[p>1]} \end{aligned} \]

发现 \(u_{p-1, x}\times c_{x + y + [p>1]}\) 也可以同理合并为 \(w_{p, y}=\sum_{x=0}^{p-1}{u_{p-1,x}\times c_{x+y+[p>1]}}\)

\[\begin{aligned} ans_n = \sum_{p=1}^{n} \sum_{y=0}^{n - p} C_{n-1}^{p-1}\times w_{p-1,y} \times v_{n - p, y} \end{aligned} \]

标签:begin,前缀,--,sum,CF1988F,times,Heartbeat,aligned,最大值
From: https://www.cnblogs.com/sukiqwq/p/18526368/CF1988F

相关文章

  • 实验3 类和对象_基础编程2
    实验任务一源码1#pragmaonce23#include<iostream>4#include<string>56usingstd::string;7usingstd::cout;89//按钮类10classButton{11public:12Button(conststring&text);13stringget_label()const;14void......
  • 板子们
    单调队列——滑动窗口#include<bits/stdc++.h>usingnamespacestd;typedeflonglongll;constintmaxn=1e6+3;intn,k,a[maxn],mx[maxn],mi[maxn],q[maxn];inlineintread(){intx=0,f=1;charch=getchar();while(ch<'......
  • 11.4 - ? 改题纪要
    11.4-?改题纪要NOIP2024模拟1不是每个题都有乱搞过得是吧。T1玩游戏先前缀和,问题变成\(a_i+b_j\le0\)考虑显然贪心,每次移动到更优的位置。这样可以跳到最小的位置,发现到终点和从起点跳过来是类似的,倒着跑一遍即可。T2排列首先发现当\(k>\logn\)时一定无解因......
  • GPB | 王向峰综述:机器学习技术驱动植物AI育种
    2024年7月,Genomics,Proteomics&Bioinformatics(GPB)在线发表了由中国农业大学王向峰教授团队撰写的题为“MachinelearningforAIbreedinginplants”的观点文章。机器学习(ML)使人工智能(AI)变得智能,ML先驱ArthurSamuel于1959年将其定义为“使计算机能够在无需明确......
  • 人工智能发展简史与展望
    来源:数据分析及应用......
  • 移动0
    移动0题目给定一个数组nums,编写一个函数将所有0移动到数组的末尾,同时保持非零元素的相对顺序。请注意,必须在不复制数组的情况下原地对数组进行操作。示例输入:nums=[0,1,0,3,12]输出:[1,3,12,0,0]思路使用快慢指针,快指针指向遍历的新元素,慢指针指向已经处理好......
  • 论IT服务知识管理
    【摘要】2022年6月,我作为系统规划与管理师参与了火火省自然资源系统全媒体采编与数据分析应用云平台的运维服务项目,合同金额为343万元,运维工期为1年,本项目主要包括云平台采编中心、舆情中心、影像中心、统计中心、地图中心、策划中心6个子系统的日常监控与维护,主要是为平台提供......
  • 【Cobalt Strike】 Beacon 通讯协议分析
    原创cxccbackdoor元数据上报数据包格式+-----------------+-----------------+-----------------+-----------------+-------------------+-----------------+|固定开头(4B)|数据长度(4B)|AES密钥(16B)|编码1(2B)|编码2(2B)|会话ID(4......