假如力扣有段位【夏日刷900题有感】
6866
2022.08.11
2022.08.12
发布于 未知归属地

不知不觉间,已刷900题有余,近日蹲在峡谷草丛的时候,突发奇想:假如力扣有段位,那么我该是什么段位?
再者,刷题和打撸或者农药,又有什么关联?
于是乎,思维不受控制的发散开来。
image.png


  1. 段位
    农药的段位有一定注水的成分,我们不妨看看lol的段位分布:
    image.png
    从左到右依次是:坚韧黑铁、英勇黄铜、不屈白银、荣耀黄金、尊贵铂金、璀璨钻石、超凡大师、傲视宗师、最强王者。
    另一种叫法是:青铜、白银、黄金、铂金、钻石、星耀、最强王者、荣耀王者。
    同志们!朋友们!Amazing是不是?段位分布如此之像(此处省略相关系数计算),我们完全有理由相信可以用力扣的竞赛积分来拟合段位。
    我们不妨看一下当前参赛选手的最低分:
    image.png
    好吧,不查不知道,一查吓一跳,这位来自距离世界一流大学最近之学府的同学,只有6分,估计也是把把参赛挂机,故意掉分,也是hin有韧性啊,坚韧黑铁段位名副其实。
    再来看看最高分:
    image.png
    嚯!可以看得出来我们玩的不是一个游戏啊,要是继续有小数点,恐怕应该是Top 0.0001%。不妨假设1000分是有脚就能实现,那么根据 3545 - 2093 = 1452 > 2093 - 1000 = 1093,由此可证,和大佬相比,我岂不是身残志坚?好了开个玩笑,总体而言,我认为可以简单的对段位作如下划分,各位小伙伴们来看看你属于哪个段位呢?

  • 青铜: < 1250
    image.png
    官方对该分段以下未做具体细分,个人觉得低于这个分数的应该是有意降下去的,具体为什么不得而知。

  • 白银:1250 ~ 1400
    image.png
    白银总共3个等级,每一个等级50分,处于该分段的同学应该是纯萌新,对于基本的语法和基本的数据结构都掌握的不好,或者对竞赛规则不了解,在竞赛中力求有0的突破。

  • 黄金:1400 ~ 1600
    image.png
    黄金总共4个等级,同样的每一个等级50分,我曾经在该分段上上下下过。回想起来,当时也是刚学数据结构,刷题不到50道,只掌握了基本的语法,但是高级一点的接口都不知道,比如Java中的堆、二元数组排序等等。在该阶段多数情况下能做出第一题,掉分的情况一般是wa次数过多,或者恰巧一道也不会做。

  • 铂金:1600 ~ 1800
    image.png
    铂金总共4个等级,每一个等级50分,更准确的来说,每10分代表一颗星。处于该分段的同学,基本上能保2争3,刷题量在200道以上,根据个人基础和比赛难度有关。想突破该分段的同学,需要继续加强基本数据结构、算法的学习,很多题型还没有见过,比如对于图论、计算几何等知识点的欠缺,很多数据结构也不太熟练,比如树状数组、线段树、二维前缀和、差分数组、单调栈等等。

  • 钻石:1800 ~ 2050
    image.png
    钻石总共5个等级,每一级50分,每一颗星10分。在该分段的同学已荣获Knight徽章,可以说基本的数据结构、算法都已经掌握,但是在灵活运用上还有所欠缺,对于难点知识例如dp,二分等等需要针对性强化训练,属于3题选手,第4题基本上做不出来。天赋型同学,也许刷200道题就可以达到,但一般人需要500道题左右才可以跨入这个门槛。我刚刚突破这个分段,前一段时间在这个分段反复横跳,跟比赛当天的状态以及难度,题型是否合我胃口有关。

  • 星耀:2050 ~ 2300
    image.png
    峡谷里最难打的段位是什么知道吗?星耀V。没错,说的就是我自己,属于那种专精某一路,但是不全面的人,而且一般有自己的打法,不太听队友劝说。所以我现在的状态就是保3争4,3题需要手速,第4题需要合我胃口才能做出来,否则要么随缘,要么很慢。
    根据前辈们的经验,一方面要加强熟练度,提高做题速度,形成肌肉记忆,另一方面要做高于自己100~200分的题,目前在训练中。
    (此处碎碎念,很想拿一个guardian勋章。)

  • 王者:> 2300
    [此处假装有图]
    稳4题选手,等我到了我跟大家分享经验哈~
    现在先做一个计划:第一步,拿到guard,第二步,突破2300分。我在峡谷已经王者了,那么这里还会远吗?

  • 荣耀王者:?
    image.png
    这是我可以评价的段位吗?真要说的话,我觉得,他们应该拿金扁担挑大米,每天吃8个馒头,睡3张床,有5个女(男)朋友吧? ヾ(◍°∇°◍)ノ゙

  1. 装备
    初入力扣峡谷,需要先熟悉基本的操作方式,滑动轮盘移动、购买、回城等技巧(等价于基础编程语言语法知识),然后熟悉各种装备(等价于基础数据结构),散件如何合成大件(数组、链表、栈、队列演变成为堆、树、图、前缀和、差分数组、线段树、并查集、字典树等等),我们不妨把基础装备放在下面,大家慢慢熟悉他们的属性:
    image.png
    对不起,放错了,是下面这个图:
    image.png

  1. 技能(英雄)
    显然,我认为可以把算法类比为技能,现在为大家展示有多少种技能,被动(基础)的如排序等等:
    image.png
    主动(进阶)的有二分、dp、bfs、dfs等等:
    image.png
    image.png
    而多个技能(被动、主动)的组合,则可以认为是一个英雄,比如,我的招牌(又菜又爱秀)英雄花木兰:
    image.png
    轻剑:dfs,小心试探,又快又爽。
    重剑:bfs,四平八稳,步步推进。

  1. 匹配
    类似地,我把每一道题当做一次匹配,都看到这儿了,大伙儿不来几把?
    大中华优秀的匹配机制,给大家推荐几题,经典下饭:
    410. 分割数组的最大值 (应该出什么装备,用什么技能组呢?是不是有多种出装?)
    417. 太平洋大西洋水流问题
    1201. 丑数 III
    好了,不管是做爽了还是做郁闷了,胜败乃兵家常事,征战峡谷不也经常翻车吗?

  1. 排位
    不难想到,就是前面说过的竞赛积分来源地:周赛。
    我只想说,大佬带妹吗?我瑶玩的可溜了,还可以女装。嘤嘤嘤~
    image.png
    这是谁的小鹿?

Ps,峡谷中最重要的是什么?人头(我划掉了哈,大家都别抢我的),补刀,对应的做题基本功是什么?模拟
设想一下,当你没蓝或者技能处于CD的时候,你能做什么?别忘了还有平A啊,所以这又对应了力扣中的什么?暴力解法
所以,当你山穷水尽疑无路的时候,请平A补刀,并发语音:“猥琐发育,别浪!我带兵线,等我大后期翻盘!”

评论 (27)