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

CF1615F LEGOndary Grandmaster

这种题我一辈子都做不明白。

首先看到 \(0/1\) 串且不影响奇偶性直接考虑奇数位置反转,反转完之后变成 \(10\)\(01\) 互换。

比较好的理解是,双方对应位置的 \(1\) 相匹配,那么最小操作次数就是 \(\sum |x_i - y_i|\),其中 \(x_i\) 是初始第 \(i\)\(1\) 的位置,\(y_i\) 同理,具体证明可以用交换法证一定不优。

但是这个形式仍然不太好计数,我们该怎么办,令 \(a_i\) 为前 \(i\) 个位置 \(1\) 的个数,\(b_i\) 同理,那么代价为 \(\sum |a_i - b_i|\),原因是每次移动恰好改变一个前缀和(不改变前缀和的操作一定无用)。

最后一步就是拆贡献了,对于每个位置,拆其在贡献答案的位置总共贡献了多少次,这是好算的。

当然也有组合大神做到线性。

http://www.hskmm.com/?act=detail&tid=22820

相关文章:

  • 2025 年仿石漆品牌最新推荐排行榜:聚焦真石漆仿石漆,水包砂仿石漆,冠晶石仿石漆,外墙仿石漆,多彩仿石漆供采购参考
  • 诚信液压阀块定制厂家推荐榜:实力制造与精准工艺口碑之选
  • 24 两两交换链表中的节点
  • 算法导论图论部分总结
  • 19 删除链表的倒数第 N 个结点
  • 浅谈 Bakas Trick / 不带删尺取 / 对顶栈
  • 聚变堆:中国BEST装置全面开建
  • web
  • 如何用pivotby函数实现数据透视(2)
  • 2025 年彩钢板厂家 TOP 企业品牌推荐排行榜,复合彩钢板,保温彩钢板,耐腐蚀彩钢板,净化彩钢板推荐这十家公司!
  • 251002
  • AT_agc020_d [AGC020D] Min Max Repetition
  • 题解:P7810 [JRKSJ R2] Upper
  • 记录自己被AWS坑了6刀
  • 如何用pivotby函数实现数据透视(1)
  • 10/1
  • 详细介绍:【数据结构】图论核心应用:关键路径算法详解——从AOE网到项目管理实战​
  • tnkstat3e-merge-0
  • JavaScript零基础入门速通(完整) - 指南
  • @RequestParam 什么时候可以省略?
  • 段页式管理方式
  • 推进电子设计革新:为什么模拟仿真正是核心助力?
  • 深入解析:前端开发,iframe 相关经验总结
  • list 容器 listr容器与vector容器 list 示例代码
  • advance 函数
  • *和 指针与地址 ++i和 i++
  • Playwright MCP浏览器自动化详解指南 - 教程
  • 指针和地址的示例运用代码
  • Python获取视频文件的各种属性信息
  • Arduino-Yun-物联网指南-全-