zoukankan      html  css  js  c++  java
  • dp总结1

    dp真是个磨人的东西,那我就分多次总结吧

    烧脑的dp

    CF568E

    第一个我愿意总结为基础模型的进阶使用

    首先考虑普通的LIS的做法,就可以发现我们直接在普通点按照LIS的方法做就好了

    发现LIS数组一定是递增的,所以可以双指针,这样枚举就只是双指针的值域了

    奇怪的方式

    AGC035D

    将过程在dp中反向考虑不要太nb

    首先发现状态好像不重叠呢,至于咋证的我也不知道,但是大概算一下应该是 (2^{n} imes n^{3}) 这个吧

    但是这个反向操作是真的nb,状态的定义很巧妙

    01trie贪心和dp的应用

    Bitwise Xor

    这个01贪心是真的可以,主要是排序有点烧脑,详细的看自己的题解吧

    稀奇的状态方式

    AT3950

    这道题告诉我们通过推理可以将一道你想不到状态的dp转化为可以做的状态

    首先是要知道贪心的思路是啥

    就是考虑01的相互影响和我们想要的答案的关系

    我们显然是想要多的1

    所以001我们盼望再来一个1,110盼望再来两个1

    反正咋的状态都只要4个(两个1和两个0)就可以表示完,其他的我们一定可以贪心过去

    某种意义上这就是dp套了一个正确的贪心

    笛卡尔树的性质

    P3592

    笛卡尔树一般都是按照val和下标来建立的

    所以对于dp一般都有在val处有贡献这种性质

    例如这道题就是,具体看题解吧

  • 相关阅读:
    java-判断某一年是否是闰年
    java-不用其他变量实现两变量互换
    java基础一标识符,运算符
    robotium学习(三)
    robotium学习(二)
    robotium学习(一)
    AX2012 订单折扣的应用
    AX2012 用户收藏夹复制
    ueditor 改变图片上传路径
    if else 多路分支,多条件运算
  • 原文地址:https://www.cnblogs.com/zzqdeco/p/13113530.html
Copyright © 2011-2022 走看看