hebtu666

少说,多做。

由旅行商问题认识何为状态压缩

动态规划 动态规划(dynamic programming)是运筹学的一个分支,是求解决策过程(decision process)最优化的数学方法。20世纪50年代初美国数学家R.E.Bellman等人在研究多阶段决策过程(multistep decision process)的优化问题时,提出...

2018-12-13 16:52:40

阅读数 767

评论数 0

蓝桥杯 摔手机

原题描述:         x星球的居民脾气不太好,但好在他们生气的时候唯一的异常举动是:摔手机。 各大厂商也就纷纷推出各种耐摔型手机。x星球的质监局规定了手机必须经过耐摔测试,并且评定出一个耐摔指数来,之后才允许上市流通。         x星球有很多高耸入云的高塔,刚好可以用来做耐摔测试。塔...

2018-12-04 18:07:32

阅读数 7545

评论数 28

皇后问题

八皇后问题是一个以国际象棋为背景的问题:如何能够在 8×8 的国际象棋棋盘上放置八个皇后,使得任何一个皇后都无法直接吃掉其他的皇后?为了达到此目的,任两个皇后都不能处于同一条横行、纵行或斜线上。八皇后问题可以推广为更一般的n皇后摆放问题:这时棋盘的大小变为n1×n1,而皇后个数也变成n2。而且仅当...

2018-11-29 15:44:55

阅读数 2082

评论数 3

动态规划基础水题提纲

提纲 汉诺塔 汉诺塔:汉诺塔(又称河内塔)问题是源于印度一个古老传说的益智玩具。大梵天创造世界的时候做了三根金刚石柱子,在一根柱子上从下往上按照大小顺序摞着64片黄金圆盘。大梵天命令婆罗门把圆盘从下面开始按大小顺序重新摆放在另一根柱子上。并且规定,在小圆盘上不能放大圆盘,在三根柱子之间一次只能...

2018-11-04 16:15:13

阅读数 319

评论数 0

map+DP leetcode446

  如果数字序列由至少三个元素组成并且任何两个连续元素之间的差异相同,则称为算术序列。 例如,这些是算术序列: 1,3,5,7,9  7,7,7,7  3,-1,-5,-9  以下序列是不算术。 1, 1, 2, 5, 7 给出了由N个数组成的零索引数组A. 该阵列的子序列切片是任何整数...

2018-10-29 16:04:19

阅读数 1671

评论数 0

单调队列优化的背包问题

对于背包问题,经典的背包九讲已经讲的很明白了,本来就不打算写这方面问题了。 但是吧。。。。。   我发现,那个最出名的九讲竟然没写队列优化的背包。。。。 那我必须写一下咯嘿嘿,这么好的思想。   我们回顾一下背包问题吧。   01背包问题  题目  有N件物品和一个容量为V的背...

2018-10-12 12:18:41

阅读数 1717

评论数 3

字符串上的简单动态规划

因为数据结构快学串了,以前又做过一些字符串dp的题,今天突然就想把它们写在一起吧。   直接开始 问题1:给两个字符串,求最长公共子串 问题2:给两个字符串,求最长公共子序列 问题3:给一个字符串,求最长回文子串 问题4:给一个字符串,求最长回文子序列 问题5:给一个字符串,求将这个...

2018-09-13 14:18:26

阅读数 799

评论数 0

dp打开思路4:POJ1189 UVA12511 HDU2845 HBCPC K

POJ1189 http://poj.org/problem?id=1189 怎么说呢,不算难,但是容易出问题 我一开始的思路是,第一个钉子只有一种情况,然后下面每个钉子:左边有钉子就加左边的情况数,右边有钉子就加右边的情况数,上边没钉子就加就加上上面的情况。(加情况均是因为小球可以到这里)...

2018-08-19 13:48:37

阅读数 505

评论数 0

dp打开思路3:HDU1069 POJ3616 POJ1088

HDU 1069 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1069 题意:把给定的长方体(不限)叠加在一起,叠加的条件是,上面一个长方体的长和宽都比下面长方体的长 和宽短;求这些长方体能叠加的最高的高度.(其中(3,2,1)可以摆放成(3...

2018-08-18 17:54:37

阅读数 588

评论数 0

动态规划-背包是否装满

很简单但是需要特别注意的,一定不要错。 背包: 有n 种不同的物品,每个物品有两个属性,v体积,c价值,现在给一个体积为 m 的背包,问最多可带走多少价值的物品。       状态转移方程  dp[i][j]=max(dp[i-1][j],dp[i-1][j-v[i]]+c[i]) dp[i-1...

2018-08-17 18:17:17

阅读数 263

评论数 0

动态规划概述

注:第一次看不需要全理解,以后动态规划做多了,再回来看看,会有更深的理解 先符上其它文章,看完这篇就可以开始看这些咯。 萌新:                                                                         https://blo...

2018-08-17 14:51:44

阅读数 959

评论数 1

dp打开思路2:POJ2533 HDU1114 HDU1260 HDU1160(水题不水)

题目:https://vjudge.net/contest/68966#overview POJ2533 最长上升子序列,很平常的题,但是维持单调队列+二分还是值得一贴的,O(nlogn) 关键思想:出现在单调队列里的数都在当前接收的数之前,所以找到最小的比他大的数替换即可,而替换的位置其实...

2018-08-03 20:27:53

阅读数 723

评论数 0

dp打开思路:HDU1029 HDU1087 HDU1176 HDU1257 POJ1458(水题不水)

题目:https://vjudge.net/contest/68966#overview HDU - 1029 题意:找出出现次数超过一半的数字 蠢思路:排序找中间 DP:扫一遍一个变量count记录解出现的次数,是当前解就++,否则--,count为负就换掉当前解。(解释:想象解全都挨在...

2018-08-03 16:34:43

阅读数 446

评论数 0

简单暴力到dp的优化(中级篇)

  想了半天怎么写中级,还是举一些有些难度的题的例子吧 分开的跳跃、多重背包、简单树形dp(区间dp) (英文题还是自己看,不要看翻译) 动态规划入了门之后,就要见多识广,多做题,打开多种思路,多熟悉各种变形,各种基本题都要掌握。 水题积累到一定程度就可以接触变形,比如和数据结构结合,和...

2018-07-30 19:42:21

阅读数 310

评论数 0

ccpc河北大学生程序设计竞赛dp小总结

  近期题目来自校赛,赛前训练,省赛热身,河北ccpc正式比赛。 河北ccpc告一段落,但是算法之路刚刚开始,自己会的东西其实很少,有大量的知识需要学, 本篇主要写dp,写简单的,主要起到启发和提高思维的作用了,套路题一律不写。   校赛: 题目一: 题目描述: 由于第m个台阶上有...

2018-05-22 11:07:52

阅读数 3034

评论数 2

简单暴力到dp的优化(初级篇)

好啦,终于写到初级啦。     本文是给已经入门的童鞋看。 就是用一些比较好玩的一维和难度不大的二维题目提高dp能力的 为啥老是说,不要看套路,要自己想呢?因为想清楚原理了自然能写出来code 有些套路题,叙述方式一变化,有些就不会了,所以,我们要锻炼找关系,想原理的能力。    ...

2018-05-06 11:06:45

阅读数 110

评论数 0

简单暴力到dp的优化(入门篇)

上篇,我们提到,遇到问题,首先根据定义写出笨方法,找出依赖关系(有些题这一步就不太简单,要自己归纳关系),然后进行优化,下面,我们通过几道此方面的经典的,较为简单的二维题目进行讲解,所谓二维,就是表示状态的参数有两个。 背包问题作为一个经典问题是很基础的一个题目,老掉牙了,但是对萌新养成思维习惯...

2018-04-16 18:14:58

阅读数 967

评论数 0

简单暴力到dp的优化(萌新篇)

    (字符串系列先暂停,因为我觉得很多基本知识没有写,讲字符串的某些题无从下笔,所以先写这个系列) 对于很多问题,已经有了前人总结的,很快速高效的解法,某些同学可能只是会用模板,却不知道原理,导致遇到新问题的时候,自己根本不会思考。某些想弄清楚的同学又看不懂某些神奇的code,所以我想写...

2018-04-12 13:19:49

阅读数 2207

评论数 4

提示
确定要删除当前文章?
取消 删除