dp经典十大问题

dp常见问题

1,子数组的最大累加和问题

输入一个数组arr,输出子数组的最大累加和

例如,arr = [1, -2, 3, 5, -2, 6, -1],所有子数组中,[3, 5, -2, 6]可以累加出最大的和12,所以返回12.

题目保证没有全为负数的数据, 题目第一行输入N(数组的元素个数),第二行输入数组元素。

[要求]

时间复杂度为O(n),空间复杂度为O(1)

**示例 **

输入:

7

-1 -2 3 5 -2 6 -1

输出:

12

**备注 **

1 ≤ N ≤ 10e5
arr[i] ≤ 100

当子数组为 3 5 -2 6 时, 子数组最大为:12

2, 买卖股票的最好时机

描述

假设你有一个数组,其中第 i 个元素是股票在第 i 天的价格。
你有一次买入和卖出的机会。(只有买入了股票以后才能卖出)。请你设计一个算法来计算可以获得的最大收益。

题目第一行输入N(数组的元素个数),第二行输入数组元素。

示例

输入:

3

1 4 2

输出:

3

备注

当第一天买入,第二天卖出,收益最大

3,求路径

描述

一个机器人在m×n大小的地图的左上角(起点)。

机器人每次向下或向右移动。机器人要到达地图的右下角(终点)。

可以有多少种不同的路径从起点走到终点?

img

备注:m和n小于等于100,并保证计算结果在int范围内

题目第一行输入m,n。 输出有多少种不同的路径从起点走到终点

示例1

输入:

2 1

输出:

1

示例2

输入:

2 2

输出:

2

4, 0-1背包

题目描述

给定n种物品和一个背包。物品i的重量是w[i],其价值为v[i],背包容量为c。问应如何选择装入背包中的物品,使得装入背包中物品的总价值最大?

题目第一行输入物品总数n和背包容量c; 第二行输入物品的重量, 第三行输入物品的体积

示例

输入:

4 8

2 3 4 5

3 4 5 8

输出:

12

5,矩阵的最小路径和

描述

给定一个 n * m 的矩阵 a,从左上角开始每次只能向右或者向下走,最后到达右下角的位置,路径上所有的数字累加起来就是路径和,输出所有的路径中最小的路径和。

题目第一行输入n行m列,随后输入矩阵a。 输出最小路径和。

示例

输入:

4 4

1 3 5 9

8 1 3 4

5 0 6 1

8 8 4 0

输出:

12

6,不相邻最大子序列和

描述

输入一个n(1<=n<=10e5),和一个长度为n的数组,在不同时选位置相邻的两个数的基础上,求该序列的最大子序列和(挑选出的子序列可以为空)。

题目第一行输入数组长度n; 第二行输入长度为n的数组; 输出最大子序列和

示例

输入:

3

1 2 3

输出:

4

7,最长公共子串的长度

描述

给定两个字符串str1和str2,输出两个字符串的最长公共子串的长度

题目保证str1和str2的最长公共子串存在且唯一。

第一行输入str1,第二行输入str2

示例

输入:

1AB2345CD
12345EF

输出:

4

备注

最长的公共子串为2345;

8, 换钱的最少货币数

描述

给定数组arr,arr中所有的值都为正整数且不重复。每个值代表一种面值的货币,每种面值的货币可以使用任意张,再给定一个aim,代表要找的钱数,求组成aim的最少货币数。如果无解,请返回-1.

第一行输入不同面值数目m 和 要找的钱数 aim; 第二行输入不同的面值arr

示例1

输入:

3 20

5 2 3

输出:

4

示例2

输入:

3 0

5 2 3

输出:

0

示例3

输入:

2 2

5 3

输出:

-1

9, 租用游艇问题

描述
长江游艇俱乐部在长江上设置了n个游艇出租站1,2,…,n。游客可在这些游艇出租站租用游艇,并在下游的任何一个游艇出租站归还游艇。游艇出租站i到游艇出租站j之间的租金为r(i,j),1<=i<j<=n。试设计一个算法,计算出从游艇出租站1到游艇出租站n所需的最少租金。

第1行中输入1个正整数n(n<=200),表示有n个游艇出租站。接下来的n-1行是r(i,j),1<=i<j<=n

示例

输入:

4
5 15 30
7 16
20

输出:

21

10, 最长公共子序列

描述

给定两个字符串str1和str2,输出两个字符串的最长公共子序列。如果最长公共子序列为空,则返回"-1"。目前给出的数据,仅仅会存在一个最长的公共子序列

示例

输入:

1A2C3D4B56
B1D23A456A

输出:

123456

Guess you like

Origin blog.csdn.net/qq_44861043/article/details/117573407