今天集训队训练的第三天,主要讲dp,我上次邀请赛的队友rootial讲的,每次dp总是把数字三角形,括号匹配,滑雪等都弄上来,不过这次除了这些,还弄了一些状态压缩dp,树形dp,比以往的好了很多,一共有12道题,A了11道题,下面一道一道的总结吧
A题,简单记忆话搜索题目,做过dp的应该都见过这个题吧,不多说
B题,数字三角形,做坏了的dp题;
C题,最长公共子系列,还是熟悉的不能再熟悉的题目;
D题,这个题怎么说呢!状态有点难想到,状态既然要枚举所有的点,有意思,最喜用链表来存,可以优化一下,
E题,简单树形dp,一开始不知道怎么弄边界条件,写了一个没有边界条件的,AC了,晕,是我想多了
F题,有点类似什么题目呢!一时想不起来,不过还是记忆话搜索,时间复杂度为O(n^3),对于这个题,够了,
G题,有点难度的状态压缩dp,记录每种状态有的weapen,来进行转移
H题,单调队列来优化的dp题目,按照PPT上来写的,具体来说,应该是双向队列dp题目;
J题,过的人很多,其实就是矩阵链乘衍生而来的,用记忆话搜索比较方便处理,时间复杂度依然为O(n^3),
L题,合唱队型加强版,用O(nlgn)的算法,唉!这个题i--弄成i++,调了一个多小时,怎么每天都有一个题目要调很久啊!晕
唉!每次都觉得自己水平好低啊,做的时候不能马上相处解法,怎么破!
作者 chensunrise