感觉前面做了那么多$dp$全是自己想的还是太少啊……

好像在LZT的博客上看到了不错的资源?赶紧开坑,以一句话题解为主

Codeforces 419B

第一题就开始盗图

由于只有一个交点,手玩一下发现两人的路径可以分为四块区域,且只有两种情况:

预处理四个方向的最长距离,枚举相交点即可

FZU 2234:

将往返路径看成从起点出发的两条路径

$dp[Xa][Xb][STEP]$用三维记录两个当前位置,转移时注意两点是否重复

Tip:建状态时注意是否有能合并的维度!

POJ 1050:

一开始想成最大全1子矩阵了……

这样权值和最大子矩阵好像也只能$O(n^3)$做:

$O(n^2)$枚举左右端点,再转换成1维$O(n)$算一遍从上到下的最长子序列

HDU 1024:

最大$m$字段和我可能之前学的是假的转移……

直接设$dp[i][j]$表示取前$i$个且第$i$个必选的最大$j$字段和,不需要再加一维表示是否选$i$

转移:$dp[i][j]=max(dp[i-1][j],dp[k][j-1])+a[i]$,滚动数组+记录前一层到$i-1$的最大值

Tip:

1、分清哪一层滚动来确定嵌套顺序

2、第二层(i)不能每次从1开始枚举,要从$j$开始!!!

边界尽量卡死防止出错

加强版见:https://www.cnblogs.com/newera/p/9534648.html

HDU 1257:

可以直接贪心判断是否需要增加系统并维护每个系统的末尾值

不过这其实是一道$Dilworth$定理相关的题

借此机会又好好复习了下集合论里的一些概念和证明:传送门

这题将偏序关系设为$i<j$且$a[i]<a[j]$,那么每个系统就是一条反链

最长链长度=最小反链覆盖,因此直接求LIS即可

HDU 1025:

按一边排序后直接LIS,注意输出里的$road$和$roads$……(还是要好好看样例!)

HDU 5282:

这里用$cnt[i][j]$计数时按是否选$a_i$分类

(注意分类转移的设置!)

1、不选$a_i$:$f[i][j]=f[i-1][j]$时加上$cnt[i-1][j]$

2、选$a_i$:预处理出$b_j$前第一个与$a_i$相同的位置$pre$

$f[i-1][pre-1]+1=f[i][j]$时加上$cnt[i-1][pre-1]$

FZU 2214:

尽量用范围小的量做状态!

POJ 2184:

要求在两个量和都大于0的情况下求最大的和

这样必定不能用和来建状态,而应该以其中一个量作状态用值存另一个量的最大值

UVa 624:

可以把$weight,value$都看成$w[i]$直接做背包

也可以用$vis[i][j]$表示能否凑出$j$

HDU 2639:

求第$K$大背包

转移的项与原来相同,只是对于每个原来状态都记录下前$K$大的值

每次转移时将$2*K$个数$O(n)$合并求出前$K$大即可

HDU 5534:

只要$\sum d_i=2*(n-1)$,那么就存在这样的一棵树

如果将每个点作为第一维那么转移是$O(n)$的,思考如何优化

发现将$d_i$相同的点合并看成一种物品再进行一些处理就能跑完全背包了!

Tips:

1、为了消除物品总数必须为$n$的限制,先给每个点分配1的度数,只考虑增量

这样就变成$W=n-2,num=n-2,w[i]'=w[i]-w[1]$的无限制完全背包了

2、注意这里要求总重量恰为$n-2$,而非至多,因此要把$dp$数组初始化为-INF$

DP Training(Updating)的更多相关文章

  1. DP Training(Updating)♪(^∇^*)

    DP Training DP Training 01 https://vjudge.net/contest/220286 密码 nfls A 数塔(Easy) \(f[i][j]\) 表示当前选第 \ ...

  2. xtu DP Training C.炮兵阵地

    炮兵阵地 Time Limit: 2000ms Memory Limit: 65536KB This problem will be judged on PKU. Original ID: 11856 ...

  3. xtu DP Training B. Collecting Bugs

    B. Collecting Bugs Time Limit: 10000ms Memory Limit: 64000KB 64-bit integer IO format: %lld      Jav ...

  4. (zhuan) 一些RL的文献(及笔记)

    一些RL的文献(及笔记) copy from: https://zhuanlan.zhihu.com/p/25770890  Introductions Introduction to reinfor ...

  5. [C6] Andrew Ng - Convolutional Neural Networks

    About this Course This course will teach you how to build convolutional neural networks and apply it ...

  6. 2017 Multi-University Training Contest - Team 9 1001&&HDU 6161 Big binary tree【树形dp+hash】

    Big binary tree Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)T ...

  7. 2017 Multi-University Training Contest - Team 1 1003&&HDU 6035 Colorful Tree【树形dp】

    Colorful Tree Time Limit: 6000/3000 MS (Java/Others)    Memory Limit: 131072/131072 K (Java/Others)T ...

  8. Gym - 100676G Training Camp (状压dp)

    G. Training Camp[ Color: Yellow ]Montaser is planning to train very hard for ACM JCPC 2015; he has p ...

  9. 2014 Super Training #9 E Destroy --树的直径+树形DP

    原题: ZOJ 3684 http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3684 题意: 给你一棵树,树的根是树的中心(到其 ...

随机推荐

  1. ORB_SLAM2 源码阅读 ORB_SLAM2::ORBextractor

    整体架构 构造函数进行初始化,传入设定几个重要的成员变量.nfeatures(特征点的个数).nlevels(构造金字塔的层数).scaleFactor(金字塔中相邻层图像的比例系数).iniThFA ...

  2. AtCoder ARC 090 E / AtCoder 3883: Avoiding Collision

    题目传送门:ARC090E. 题意简述: 给定一张有 \(N\) 个点 \(M\) 条边的无向图.每条边有相应的边权,边权是正整数. 小 A 要从结点 \(S\) 走到结点 \(T\) ,而小 B 则 ...

  3. kernel 3.10内核源码分析--TLB相关--TLB概念、flush、TLB lazy模式 【转】

    转自:http://blog.chinaunix.net/xmlrpc.php?r=blog/article&id=4808877&uid=14528823 一.概念及基本原理 TLB ...

  4. HDU 6215 2017Brute Force Sorting 青岛网络赛 队列加链表模拟

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6215 题意:给你长度为n的数组,定义已经排列过的串为:相邻两项a[i],a[i+1],满足a[i]&l ...

  5. APUE-文件和目录(八)文件时间

    文件的时间 与文件相关的三个时间值: 访问时间:最后一次访问文件的时间.例如,cat命令会修改这个时间. 修改时间:文件内容最后一次被修改的时间. 状态更改时间:文件的i节点最后一次被修改的时间.例如 ...

  6. linux系统时钟和硬件时钟不一致

    在做DB2 集群复制的时候要求两台主机时间相互一致. 但是在一台主机上系统时间和硬件时间相差12个小时左右:手动同步后,重启后又相差12个小时左右. 为什么会是这样的,先介绍下系统时钟和硬件时钟的区别 ...

  7. MongoDB(3.6.3)的用户认证初识

    Windows 10家庭中文版,MongoDB 3.6.3, 前言 刚刚安装好了MongoDB,启动了服务器-mongod命令,启动了MongoDB shell-mongo命令,不过,全程都没有使用u ...

  8. Token机制,防止web页面重复提交

    1.业务要求:页面的数据只能被点击提交一次 2.发生原因: 由于重复点击或者网络重发,或者nginx重发等情况会导致数据被重复提交 3.解决办法: 集群环境:采用token加redis(redis单线 ...

  9. java基础55 UDP通讯协议和TCP通讯协议

    本文知识点(目录): 1.概述    2.UDP通讯协议    3.TCPP通讯协议 1.概述 1.在java中网络通讯作为Socket(插座)通讯,要求两台都必须安装socket.    2.不同的 ...

  10. TImage 显示 资源中 的图片、TResourceStream、资源文件

    unit Unit5; interface uses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System ...