势能相关做题记录

1|0势能相关

1|1P5905 【模板】全源最短路(Johnson)

题意:有负权情况下的全源最短路。

思路:Johnson 全源最短路可以在 O(nmlogm) 的复杂度内解决带有负权的全源最短路。

这个算法的巧妙之处在于为每个点赋予 势能 hi。从一个点到另一个点,无论走什么路径,势能的变化量都是一定的。于是我们被每条边的边权改为 wi+huhv,然后先用 SPFA 求出 h,这样每条边都是非负的,可以跑 n 遍 Dijkstra 来求解。

1|2P1861 星之器

题意:有 n×m 的网格,每次操作可以让每一行或者每一列的不相邻的两个格子,让这两个格子减一,让与这两个格子相邻且在中间的两个格子减一,每次操作的贡献是两个格子的距离,给出初始状态和末状态,求最大贡献。

思路:神题。

可以发现答案与操作的方式无关,只与初、末状态有关,于是可以想到用势能来刻画。

f(x,y)(x,y) 的势能,那么总势能就是每个点势能的加和,而且 x,y 两维是独立的。

单独考虑 x 维。根据操作,有 f(x1)+f(x2)f(x1+1)f(x21)=x2x11,移项就是 f(x1+1)f(x1)(x1+1)=f(x2)f(x21)x2,即 f(x1)f(x)x 为定值,那么不妨就当做 0,这样推出来 f(x)=x2+x2,于是 f(x,y)=x2+x+y2+y2,把所有的加起来就是答案。


__EOF__

本文作者Xttttr
本文链接https://www.cnblogs.com/Xttttr/p/18015056.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角推荐一下。您的鼓励是博主的最大动力!
posted @   Xttttr  阅读(7)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】
点击右上角即可分享
微信分享提示