摘要: 原题链接 题意: 给定一个数组数字,有一个大小为k的滑动窗口,它从数组的最左边移动到最右边。你只能在窗口看到k个数字。每次滑动窗口向右移动一个位置。 记录每一次窗口内的最大值,返回记录的值。 思路: 解法一: 一开始用的c++迭代器来模拟窗口,每移动一次就遍历一次找出最大值填入返回数组中。 效率非常 阅读全文
posted @ 2018-11-06 18:48 Ruohua3kou 阅读(146) 评论(0) 推荐(0) 编辑
摘要: 原题链接 题意: 给一个非整数,算出其最少可以由几个完全平方数组成(1,4,9,16……) 思路: 可以得到一个状态转移方程 dp[i] = min(dp[i], dp[i - j * j] + 1); 代码如下: Runtime: 60 ms, faster than 69.83% 有点慢 cla 阅读全文
posted @ 2018-11-06 11:27 Ruohua3kou 阅读(146) 评论(0) 推荐(0) 编辑
摘要: 原题链接 比子母题House Robber多了一个条件:偷了0以后,第n-1间房子不能偷。 转换思路为求偷盗【0,n-1)之间,以及【1,n)之间的最大值。 用两个DP,分别保存偷不偷第0间房的情况。 Runtime: 0 ms, faster than 100.00% 阅读全文
posted @ 2018-11-06 10:58 Ruohua3kou 阅读(226) 评论(0) 推荐(0) 编辑