一些想法:(四级标题)
现在是2024-3-13 07:28:37,之前用另外一个号写的居然发不出来,还是搁这个号上发,然后做好备份吧。所以这算是第一篇博客,尝试今天开始不定期发自己的做题学习经历,记录一下成长过程好吧~
解题报告:(四级标题)
模型的同名原题,使用斜线作为坐标系,就可以简单的把状态转移方程写出来,显然是记录最大和,那么通过转移的来源找到转移源的最大值,就可以简单的得出结果。
AdcWing 898. 数字三角形 (万恶之源啊)
下面几道题都是最基本的数字三角形模型的衍生,通过原型题我们已经知道,这类题会给你一个类似地图的形状,求最大值,最小值,方案是否存在,计数。然后我们可以通过确定最新的格子的上一个转移对象是它的哪一个就好了。下面两题的解题方法是一样的,重点在于第二题求最小值时候的边界处理(第一题求最大值,边界不用处理)
AcWing 1018. 最低通行费
然后是这类题的一个扩展。在n*m或者n*n的地图上让你取两次数,每个数对于总体的贡献只有第一次。
最开始的思路是用四个值记录两条路线的坐标,即 f[x1][y1][x2][y2] 来记录全流程,随后处理冲突,也即只有当 x1==x2 && y1==y2 时,可能发生冲突,此时转移方程加上的权值只能加一次,否则就按各自的算,排列组合有四种情况。
优化:可以用一个 k 来记录两条路线的步数,也即令 k = x1+y1 = x2+y2 ,优化后的状态转移方程只有当 x1=x2 时才需要去考虑冲突。
最后一定不要忘了边界问题!!!
心得:
这算是第一篇博客(虽然写过了,但是没发出来所以不算)希望这个学期能努力变强!