上一页 1 ··· 7 8 9 10 11 12 13 14 15 ··· 33 下一页
摘要: 入手的时候一直想打破表面,发现数学本质,结果并没有发现什么数学本质,直接去找答案。 挺复杂的,一般H的题如果我面试的时候遇到,用成语形容可能出现的情况,就是我 可能会吃屎 。这题对我来说是 一定会吃屎 。 dietpepsi给的答案很详细。 首先,一排气球左边是L,右边是R,我们可以假设最后一个打爆 阅读全文
posted @ 2016-12-04 13:32 哇呀呀..生气啦~ 阅读(294) 评论(0) 推荐(0)
摘要: 刷 July 14 2019 日他妈好难啊 第一种做法,就是类似于palindrome partition那样,枚举出所有可能,选一个substring数目最少的。 第二种做法DP,看到DP真几把绝望。 minCut[n]代表0~n的substring最少能切多少下,使所有substring都是pa 阅读全文
posted @ 2016-12-04 12:05 哇呀呀..生气啦~ 阅读(133) 评论(0) 推荐(0)
摘要: 最后更新 三刷? 找矩阵里的最长路径。 看起来是DFS,实际上也就是。但是如果从每个点都进行一次DFS然后保留最大的话,会超时。 这里需要结合DP,dp[i][j]表示以此点开始的最长路径,这样每次碰到的时候,如果已经算过,可以直接调取这个值。 用空间交换了部分时间。 写的时候我吸取教训,把边界判断 阅读全文
posted @ 2016-12-04 05:03 哇呀呀..生气啦~ 阅读(241) 评论(0) 推荐(0)
摘要: 刷 July 25 2019 DP题做了几道我也发现共性了,就是每道我都不会。 这道题要这么想: n位置的最优解是cost[n]里最小的+best[n 1]。问题出在,当前K中里最便宜的情况,有可能和n 1最优解时的颜色一样,在遍历cost[0~k]的时候,如果颜色和上次最优解一样,就要当前COST 阅读全文
posted @ 2016-12-03 08:58 哇呀呀..生气啦~ 阅读(336) 评论(0) 推荐(0)
摘要: 比较典型的动态规划。 如果把重点放在当前房子和上一个相同,还是不同来做就做不出来,所以干脆枚举每个房子的情况。 dp[i][0] = costs[i][0] + Math.min(dp[i 1][1],dp[i 1][2]); dp[i][1] = costs[i][1] + Math.min(dp 阅读全文
posted @ 2016-12-03 08:21 哇呀呀..生气啦~ 阅读(183) 评论(0) 推荐(0)
摘要: 这题有歧义啊。。说的是颜色相同的相邻数量不能超过2个,不是颜色相同的对数不能超过2个,我日了。 搞懂之后就不难了,动态规划。 每一次粉刷都有2种可能,和前一个颜色相同;和前一个颜色不同。 总和是same[n]+diff[n].. 然后,这种一维DP是不需要整个数组的,3个变量就够了,但是这么写更清楚 阅读全文
posted @ 2016-12-03 08:02 哇呀呀..生气啦~ 阅读(199) 评论(0) 推荐(0)
摘要: 二刷吧。。不知道为什么house robbery系列我找不到笔记,不过印象中做了好几次了。 不是很难,用的post order做bottom up的运算。 对于一个Node来说,有2种情况,一种是选(自己+下下层);一种是选左右children. 其实就是选自己和不选自己的区别。其实更像是dfs的题 阅读全文
posted @ 2016-12-03 07:27 哇呀呀..生气啦~ 阅读(360) 评论(0) 推荐(0)
摘要: 好像是二刷。 题干改变的一点就是现在所有房子成环了,首尾相连。 现在没法用动态规划来dp[n] 来做了,因为第(n 1)个房子和第1个房子是相连的。 假如我们第一个房子不抢,从n = 1开始,那么剩下的总共n 1个房子和第一题一样,因为最后一个房子此时就算选了也不和n=0(第一个)重合。 假如我们第 阅读全文
posted @ 2016-12-03 07:05 哇呀呀..生气啦~ 阅读(135) 评论(0) 推荐(0)
摘要: 我的心好痛,有点可怜自己了,骗子啊。。好伤心。。。。为什么要骗我。 你说,霞染天光,陌上花开与谁享;后来,烟笼柳暗,湖心水动影无双。 dp[i] = Math.max(dp[i 1], dp[i 2] + nums[i]); java public class Solution { public i 阅读全文
posted @ 2016-12-03 04:04 哇呀呀..生气啦~ 阅读(135) 评论(0) 推荐(0)
摘要: 刷 June 23 2019 先用UF做了一下,这个不容易想到。valid tree说明 UF最终只有一个group 每次加的2个node都不能发现它已经在树里了。 比如[1,2][3,4]第一个条件不满足 [1,2][2,3][1,3]第二个条件不满足 然后做就行了。其实用n + 1 == edg 阅读全文
posted @ 2016-12-02 12:51 哇呀呀..生气啦~ 阅读(233) 评论(0) 推荐(0)
上一页 1 ··· 7 8 9 10 11 12 13 14 15 ··· 33 下一页