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

4.25测试

link
注意到\(1\leq a_i\leq 9,1\leq j\leq a_i\)
\(f(i)\)表示到达位置\(i\)需要的最小代价。
题目中的两种转移可以分别处理。
\(1.\)枚举步长\(j\)即可。\(f(i)=f(i-j)+\frac{j}{a_{i-j}}\)
\(2.\)维护\(lst(a_i)\)表示上一个与\(a_i\)相同的\(a\)的位置\(j~f(i)=f(j)+1\)
需要注意的是分数运算不能再每次转移中\(logV\)处理,总时间复杂度为\(O(9nlogV)\)
我们考虑优化分数处理的过程,容易想到需要将分母去掉。
对于\(\frac{j}{a_{i-j}},a\in\lbrace 1\dots 9\rbrace\),在分子乘上\(2520\)即可消去分母\(a_{i-j}\)
\(2520=lcm(1\dots 9)\)
\(1.f(i)=f(i-j)+\frac{j\times2520}{a_{i-j}}\)
\(2.f(i)=f(lst(a_i))+2520\)
\(Ans=\frac{f(n)}{2520}\)


link
\(f(i)\)表示到达位置\(i\)需要的最小次数。
\(f(i)=min_{j<i\leq nxt(j)}^j\lbrace f(j)+1\rbrace\)
时间复杂度\(O(n^2)\)
我们尝试转化方程形式。
\(\forall j,f(j)=min\lbrace f(i)+1\rbrace~ [i<j\leq nxt(i)]\)
由刷表法的转移方程,我们可知\(\forall j,f(j)\geq f(i)~ [j>i]\)
\(\forall j,f(j)+1\geq f(i)+1~ [j>i]\)
所以对于\(i<k\leq nxt(i)\vee j<k\leq nxt(j)\vee j>i\)\(f(i)\)不劣于\(f(j)\)
维护一个\(lst\)表示目前转移到的\(f\)下标的最大值。
\(\forall j,f(j)=min\lbrace f(i)+1\rbrace~ [lst<j\leq nxt(i)]\)
每个\(f\)只被转移一次,时间复杂度\(O(n)\)


link
显然状压每个人的管辖区\([E_i,E_i+5)\)
\(f(i,S)\)表示考虑前\(i\)个人,\([i,i+5)\)的状态为\(S\)的答案。
\(f(i,S)=max\lbrace f(i-1,S[i,i+4)),f(i-1,S[i,i+4)|1)\rbrace+S的贡献\)
我们需要预处理\(S\)的贡献。
\(g(i,S)\)表示状态\([i,i+5)\)的贡献,输入时顺便处理即可。
需要注意的是,状态是对于\(i\)的相对位置,需要把环上的位置转化为对于\(i\)的相对位置。
\(相对位置=(环上位置-i+n)\)%\(n\)
\(f(i,S)=max\lbrace f(i-1,S[i,i+4)),f(i-1,S[i,i+4)|1)\rbrace+g(i,S)\)
注意,\(f(1,)\)\(f(0,)\)转移过来,而环上的\(0=n\),为了统计答案,我们需要\([n,n+5)\)的确定状态。
当我们枚举的\([n,n+5)\)的状态时,代表着\([0,0+5)\)的状态也被确定了。
所以只有从枚举的状态\(f(0,[n,n+5))\)转移才是合法的。


link
简化题意:去掉一些边,使得图上,没有偶环,求最小代价。
反向考虑,给定一棵树和一些非树边,加入一些边到树上,使得图上没有偶环,求最大边权和。
首先,如果边\((u,v)\)会使得\(u\rightarrow v\rightarrow LCA(u,v)\rightarrow u\)形成一个偶环,则\((u,v)\)不能选择。
其次,如果两条边分别的奇环在树上有共同边时,那么去掉共同边,也会产生偶环(\(2|x+y-2k\))。
所以需要在树上选择一些不相交的非树边使得权值和最大。


考虑\(30pts\)的链:
在一条链上选取若干不相交非树边其实就是一个线性dp,是简单的。
\(f(i)\)表示考虑了前\(i\)个节点,第\(i\)个节点被覆盖的答案。
\(f(i)+w(u,v)\rightarrow f(v)[i\leq u]\)
时间复杂度\(O(nm)\)


考虑把链的思想延续到全局,注意到出度\(\leq 10\),所以考虑状压,把每个子树看作一条链处理。
对于每条非树边\((u,v)\)\(LCA(u,v)\)处考虑,设\(f(u,S)\)表示以\(u\)为根的子树中,\(S\)中儿子未考虑的方案数。
转移分类讨论:
\(1.\)不选\((u,v)\)
\(f(lca,S)=\sum_{x\in son\wedge x\notin S}f(x,\emptyset)\)
\(2.\)选择\((u,v)\)
对于\((u,v)\),它能带来的价值是\(value(u,v)=w(u,v)+\sum_{x\in u\rightarrow v}^{fa(x)\neq lca\wedge x\neq lca}f(fa(x),\lbrace x\rbrace)\)
\(x\rightarrow lca\rightarrow y\in u\rightarrow v\wedge x,y\in son_{lca}\)
\(\forall S,x,y\notin S\)
\(f(lca,S)\leftarrow value(u,v)+f(u,S\cup\lbrace x,y\rbrace)\)
\(Ans=\sum w(u,v)-f(1,\emptyset)\)
时间复杂度\(O(mlogn+n2^10)\)
其实就是仙人掌

http://www.jsqmd.com/news/713802/

相关文章:

  • 用Python复现何恺明暗通道去雾算法:从论文公式到OpenCV实战(附完整代码)
  • Xpath Helper Plus:3分钟掌握网页元素精准定位的终极武器
  • 别再混用同步和异步复位了!聊聊数字设计里那些让人头疼的RDC问题
  • 2026年空调制冷差,到底是不是该加冷媒了? - 小何家电维修
  • 告别数学焦虑:用SageMathCell在线工具5分钟搞定Python符号计算
  • 不止于登录:用vue3-slide-verify给你的Vue3后台管理系统加点‘防呆’交互
  • 水下游泳适合戴什么耳机?推荐5款防水性能比较好的运动耳机 - 博客万
  • 别再手搓CRC-8了!C语言三种实现方案对比(含查表法优化代码)
  • GD32F103新手踩坑记:PB3/PB4引脚电平拉不高?一文搞懂JTAG引脚复用与重映射
  • Xpath Helper Plus:网页元素定位神器,3分钟掌握精准定位技巧
  • 滚动条美化终极指南!这款4.8K Star的神器终于解决了前端老难题
  • LoRA源码里的“隐藏关卡”:深入剖析MergedLinear与enable_lora参数,解决QKV投影微调难题
  • 雷达信号处理中的‘增益’迷思:脉冲压缩如何真正提升信噪比?一个容易被忽略的视角
  • 强化学习算法 —— 为什么TRPO算法使用状态值(V)而不是动作值进行计算?
  • ExtractorSharp终极指南:轻松制作游戏补丁的完整教程
  • 别再只换不修了!手把手教你诊断和修复一个不转的CPU散热风扇
  • LangChain新手避坑指南:从环境配置到第一个ChatBot的5个常见错误
  • 从零起步全面掌握SEO,助力提升网站流量的有效策略
  • 如何用普通摄像头构建实时瞳孔追踪系统:eyeLike完全指南
  • MicroStation平台上的TerraSolid点云处理:从数据加载到成果导出的完整工作流复盘
  • 终极VRChat模型优化指南:Cats Blender Plugin完全解析
  • 抗独特型抗体在抗体药物开发中有何关键价值?
  • 别再傻傻重启电脑了!Windows端口冲突,用netstat和tasklist一键揪出‘元凶’
  • 从芯片手册到仿真验证:深入理解74LS00与非门的‘可控’特性(Proteus实战)
  • TVA在汽车动力电池模组全流程检测中的应用(5)
  • Python设备预测性维护实战:3个真实产线案例,教你用LSTM+PHM在48小时内上线预警系统
  • 基于Evolution API构建WhatsApp消息系统:从架构到生产部署
  • 深度解析WVP-GB28181-Pro项目中海康摄像头语音广播协议兼容性问题排查与配置优化实战指南
  • wxauto:Windows微信自动化终极指南,5分钟构建你的智能助手
  • 淡化新生色斑选哪款内服?2026葡萄籽品牌合集,温和代谢黑色素 - 博客万