码迷,mamicode.com
首页 > 其他好文 > 详细

2018暑假集训第五周感想

时间:2018-08-28 21:11:59      阅读:148      评论:0      收藏:0      [点我收藏+]

标签:类型   序列   策略   也有   暑假   for   target   顺序   接下来   

第五周有点漫长。。题打得有点磨,急躁,自卑等等负面情绪不断出来(ㄒoㄒ)

线段树真难,dp也真难。。如果线段树是有思路实现不了,dp就是完全没思路,核心思想就是找一个转移方程,然而ヽ(´¬`)ノ

寻找dp的转移方程真是一个艰难的过程,同时还伴随着恐怖的状态压缩,也没有什么固定的套路和方法,只能靠多练习和领悟了(?•ω•?)

dp也就是动态规划是针对一类最优解的算法,核心思想是类似分治,把一个问题分解成若干个子问题,通过每一个子问题的最优决策得到最优解(~ ̄▽ ̄)~ 

dp的实现有递推,也有记忆化搜索,也就是从下至顶,和从顶向下, 也就是递推和递归两种实现方法,具体哪个视题目而定,肯定是哪个简单好实现用哪个?(?????)?

接下来盗用一下,学长ppt里的概念φ(>ω<*) 

首先,动态规划是解决多阶段决策过程最优化问题的一种方法(~ ̄▽ ̄)~ 

然后,把问题分成几个相互联系的有顺序的几个环节,这些环节即称为阶段。︿( ̄︶ ̄)︿

再然后,某一阶段的出发位置称为状态。通常一个阶段包含若干状态。(o?▽?)o  

再再然后,决策就是从某阶段的一个状态演变到下一个阶段某状态的选择。ヾ(?∀?ゞ)

再再再然后,由开始到终点的全过程中,由每段决策组成的决策序列称为全过程策略,简称策略。(????)?"""

最后,前一阶段的终点就是后一阶段的起点,前一阶段的决策选择导出了后一阶段的状态,这种关系描述了由i阶段到i+1阶段状态的演变规律,称为状态转移方程。ヾ(??▽?)ノ

动态规划适用的基本条件,具有相同子问题,满足最优子结构,满足无后效性,解决动态规划问题的一般步骤就是ヽ(?∀?)?(?∀?)? 

第一步:找到一个原问题,并分析它的子问题,(??∀?)? 

第二步:根据原问题和子问题确定状态,ヾ(o´∀`o)? 

第三步:确定状态转移方程,ヾ(●´∀`●) 

第四步,确定编程实现方式。(?▽?*) 

dp问题最经典的还有背包问题,这里挂上dd大佬的背包九讲链接https://blog.csdn.net/ling_du/article/details/41594767大佬牛bi(自行和谐)( ̄3 ̄)a 

最后还有就是状态压缩的dp,状态压缩不只是dp,很多类型都有状态压缩,核心思想就是用二进制来优化,只能先挖个坑先了ヽ(´¬`)ノ

啊啊啊,集训就这么结束了,可是感觉自己还是很菜,还是那么贪玩,唉,upupupup(*^o^)人(^o^*)

2018暑假集训第五周感想

标签:类型   序列   策略   也有   暑假   for   target   顺序   接下来   

原文地址:https://www.cnblogs.com/LMCC1108/p/9545490.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!