当前位置: 首页 > news >正文

CF1334F Strange Function - Harvey

考虑 \(dp\) 状态,容易想到状态 \(f_{i,j}\) 表示前 \(i\)\(a\) 可以匹配前 \(j\)\(b\) 的最大权值,状态数位 \(O(n^2)\)
但我们马上发现 \(b_j\) 是唯一的,所以可以省去第二维。
考虑暴力转移:

\[f_{i} = \max_{0<k<i,a_k=b_{j-1}}{f_{k} + \sum_{t=k+1}^{i-1} [p_t>0][a_t \leq a_k]p_t} + p_i \]

这样时间复杂度为 \(\mathcal{O}(n^2)\),考虑优化。
考虑定义 \(g_{k} = f_k + \sum_{t=k+1}^{i-1} [p_t>0][a_t \leq a_k]p_t\),则每一次会使 \(a_k \geq a_i\)\(g_k\) 全部加上 \(p_i\),当前仅当 \(p_i>0\).
显然这是一个后缀加操作,于是维护树状数组,维护后缀加,单点查询和单点取 \(\max\),单点取 \(\max\) 可以拆成两个后缀加和一个单点查。

时间复杂度:\(\mathcal{O}(n \log n)\)

#include<bits/stdc++.h>
#define ll long long using namespace std;const int N = 5e5+5;
const ll INF = 1e18+7;int n,m;
int a[N];
int p[N],b[N],pos[N];
ll f[N],sum;namespace BIT{ll tr[N];int lowbit(int x){return x&(-x);}ll query(ll x){ll res=0;for(;x;x-=lowbit(x))res+=tr[x];return res;}void add(int x,ll w){for(;x<=n;x+=lowbit(x))tr[x]+=w;}
}
int main() {cin>>n;for(int i=1;i<=n;i++)cin>>a[i];for(int i=1;i<=n;i++)cin>>p[i],sum+=p[i];cin>>m;for(int i=1;i<=m;i++)cin>>b[i],pos[b[i]]=i;BIT::add(1,-INF);for(int i=1;i<=n;i++){int t=pos[a[i]],pre=t-1;if(t)f[i]=BIT::query(b[pre])+p[i];else f[i]=-INF;if(p[i]>0)BIT::add(a[i],p[i]);ll s=BIT::query(a[i]);if(s<f[i]){BIT::add(a[i],f[i]-s);BIT::add(a[i]+1,s-f[i]);}}ll ans=BIT::query(b[m]);if(ans<-1e16)cout<<"NO";else cout<<"YES\n"<<sum-ans<<'\n';return 0;
} 
http://www.gsyq.cn/news/91620.html

相关文章:

  • 42、浮点数数学运算与 bc 实用工具详解
  • 轻松迁移阅读数据:Readest帮你无缝衔接电子书库
  • Dio响应压缩终极指南:3大技巧让Flutter应用性能飞跃
  • 三菱FX系列PLC驱动:极速安装与高效调试指南 [特殊字符]
  • Bilidown:一键解锁B站视频下载神器,8K超清画质随心存
  • Test-Agent:开启智能测试新时代的革命性工具
  • JeecgBoot企业级低代码平台:5分钟极速搭建业务系统实战指南
  • 微信小程序逆向分析利器:unwxapkg解密工具完全指南
  • 2025数据恢复软件TOP5权威测评:数之寻公司概况深度解析 - myqiye
  • OpenCVSharp:学习连通性检测的使用
  • Ruby爬虫框架Wombat:结构化数据提取的技术实践
  • 2025年上海任用外国专家服务机构排行榜,5大专业礼聘外国人 - mypinpai
  • Obsidian Kanban图片添加终极指南:3分钟学会卡片插图
  • 如何免费获取《极品家丁七改版》完整小说下载
  • 2025医用治疗柜TOP5权威推荐:甄选品牌护航医疗空间安全 - 工业推荐榜
  • 2025年治疗柜专业厂家推荐:实力不错的治疗柜工厂解析 - 工业推荐榜
  • 在浏览器中体验Ubuntu桌面:下一代网页交互的探索之旅
  • AnimeGAN终极指南:3步将普通照片变身精美动漫风格
  • 基于Spring Boot框架和vue的的学生第二课堂管理系统的设计与实现_4m973h71
  • DynamicCow终极指南:如何在旧款iPhone上免费体验Dynamic Island动态岛
  • 19、Linux打印系统配置与管理全解析
  • ImageSharp色彩矩阵实战:从原理到企业级应用
  • ripgrep完全指南:从入门到精通的高速文本搜索工具
  • 深度解析gRPC-web与Koa.js融合:打造高性能Node.js微服务架构
  • 用SkiaSharp.TimeLine生成时间轴或时间线的图片流
  • Caesium图像压缩器完整使用指南:从基础配置到高级优化
  • BootstrapAdmin:重新定义.NET企业级权限管理的零代码革命
  • 2025年调度中心控制台五大品牌供应商推荐,服务与批量定制能 - myqiye
  • DiffPDF V6.0.0:快速识别PDF差异的终极指南
  • 河北沧州南皮县自建房评测排行榜:6 家主流企业实地测评,哪家更靠谱? - 苏木2025