8.1-8.2 - medium总结 - 总结3

总结181到240这六十题medium难度的。这一段做的很不好,好多题都不太会。这里要好好总结一下,一天搞不定分两天,不过一定要每一题都能过。数了一下,六十题有二十九道题不会做,我也是醉了。剩下还有六十题这样子,要踏实得慢慢过,不要着急。每一道题都有它出彩的地方,这些点要理解清楚,之后再去做难题会好很多。

361. Bomb Enemy: 这题最主要的思想就是,先提前用循环更新当前的row enemy和col enemy。但是并不是对每一个值都更新,只有初始化的时候,还有就是碰到墙壁要重置的时候才去更新值,其它的时候就直接用前面更新过的值。
365. Water and Jug Problem: 主要就是要证明一个,如果x,y是coprime的话,那么可以获得[0, x+y]中的任何值。如果不是coprime,那么就是可以获得 gcd(x, y)*[0, x+y]中的任何值。证明过程https://leetcode.com/problems/water-and-jug-problem/discuss/ 。而要计算coprime x y的话,就是用递归 gcd(a, 0) = a, gcd(a,b) = gcd(b, a%b)
372. Super Pow: 这道题踩的人很多,基本的想法就是(a*b)%c = a%c*b%c所以a^[1,2,3]%c = a^[1,2]^10%c*a^3%c 而对于a^x%c = for i in range(c): res= (res*a)%c
375. Guess Number Higher or Lower II: minmax,每一个子情况都考虑最坏的,不过对于所有的子情况中,获取一个最好的。还有这题又是一道对角线dp,对于对角线dp进行循环的时候,可以去循环一个distance表示i,j之间的距离,然后再循环i,计算出j = i+distance,这样可以保证从先计算出靠近对角线的值再计算远离对角线的值。
382. Linked List Random Node: 蓄水池采样法
384. Shuffle an Array: 这题应该会做的。只是简单的利用random.randint,然后不停的从数组中移除元素。
385. Mini Parser:利用stack,但是最关键的问题是每碰到一个【就创建一个object 加入到stack里,每碰到一个】就把当前的object加入到stack[-1]里。然后再分别考虑“,”和number的情况。
386. Lexicographical Numbers:这道题很难想。记录一下逻辑思路,希望下一次能直接写出来:先对当前res里的最后一个元素乘以10赋值为cur,如果cur大于n说明,乘以10超过了n的范畴,然后就把cur再除以10,并且加1,比如说最后一个值是2,那么先变化为20,如果20太大了,就变回2并且加1,变到3.如果是100就先变到1000,然后如果1000太大了,就变回100,并且加1把101放入到res里去。不过此时要处理一种情况,比如说当前是199,先放大十倍,如果1990不在范围然后变回199并且加1,就是200,这时候要检测200%10是否是0,如果是的话,就变回到20,再检测20%10,还是为0,就继续变回到2。然后再继续。
388. Longest Absolute File Path:首先要想到要按\n split整个input,然后要记录个元素的level,这个level可以有前缀\t 的个数来确定。然后每次访问要从当前level - 1,也就是父文件夹开始。
390. Elimination Game: 这题解法也挺奇特,要记录变量是head的位置,当前步长还有剩余数的个数
393. UTF-8 Validation:python的二进制表示法:0b11110000. 知道这个之后,记录一个当前的i,然后一个一个loop就可以了
395. Longest Substring with At Least K Repeating Characters: 这题是用recursion的思想来做,不停的分成substring,然后再计算substring的可能性。
396. Rotate Function:利用相邻的差的公式,循环计算就可以了。
397. Integer Replacement: 主要要观察到一个性质,n%4==3的时候要+1,==1的时候要-1。
399. Evaluate Division:这题是创建一个带权重的图,然后在图里面找最短路径。
413. Arithmetic Slices: 利用前向型指针,先计算出所有等距线段的长度,然后再通过一次数学计算就可以了。
416. Partition Equal Subset Sum: 比较非典型的一个背包问题,其实能想到这是一道背包问题基本上这题就算是做出来了。
418. Sentence Screen Fitting: 这道题大概的解法是知道了,不过为什么还不是很清楚
421. Maximum XOR of Two Numbers in an Array: 首先要记得一个性质 a^b=c => a^c=b,然后记录当前的prefix和下一个可能的next_prefix = prefix << 1 | 1如果next_prefix = a^b的话,就更新。
423. Reconstruct Original Digits from English: 还算是有意思的一种解题思路,直接靠眼观察的
439. Ternary Expression Parser: 还算比较容易的一道题,应该是当时已经做昏头了,所以才没做出来吧。在用stack存储的时候,可以用一个op来记录当前的operator。
444. Sequence Reconstruction: 一道topologysort的问题,虽然拓扑排序比较简单,但是要把题目识别出来时拓扑排序还是需要一定的功力的。
450. Delete Node in a BST: 利用递归的思想,比较当前的root和key的大小直到找到root.val==key,然后再对这个root进行替换
456. 132 Pattern:用stack维护一个递减区间,这种题目说难很难,知道解法后代码量不多,感觉还好。
464. Can I Win: 这道题想起来也不是很难。不过这种play game的题目一向是我的弱项。
467. Unique Substrings in Wraparound String: 关键的一个观察点在于以某个一char结尾的所有substring等于以这个char结尾的最长substring的长度。比如说zabcd,如果找所有以c结尾的substring 就等于 4 == len(zabc) == len([zabc, abc, bc, c])
469. Convex Polygon: 这题是真心不会做。。。只能强行背答案。。。基本的想法是crossproduct可以求出两个vector的方向(顺时针还是逆时针),然后所有的这样的点和边都要保持这样的方向就可以了。
473. Matchsticks to Square: 又是一种backtracking的新思路。把pos走到底看看有没有形成最终答案。
474. Ones and Zeroes: 这题是特别典型的背包dp,要多练习啊。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 217,277评论 6 503
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,689评论 3 393
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 163,624评论 0 353
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,356评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,402评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,292评论 1 301
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,135评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,992评论 0 275
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,429评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,636评论 3 334
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,785评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,492评论 5 345
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,092评论 3 328
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,723评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,858评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,891评论 2 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,713评论 2 354

推荐阅读更多精彩内容