Python技术迷

在公司喜欢上了一个已婚妹子,好痛苦,怎么办?每天下班,看到她被别的男人接走了

刚看到个贴子,说一网友在公司喜欢上了一个已婚妹子,每天下班看到她被老公接走就心碎,问该怎么办。

Image

人有情绪没错,但这情绪不能让你越界。网友评论也挺分裂的,有人劝他放下,有人说这才是真爱。可真爱是建立在尊重和边界上的,不是靠“痛苦”来证明的。

换个角度想,喜欢一个人不是错,但一旦对方已婚,这就是条清晰的红线。你越陷越深,只会越来越痛。要真喜欢她,起码别破坏她的家庭,自己默默抽身才是担当。

喜欢不如敬重,放手是种成长。要学会止损,为自己的未来腾出空间 【备注:文末可领最新资料】

面试题:赛车

讲道理,LeetCode 上的那道「赛车问题」其实乍一看挺直白,但背后其实有不少值得聊的东西。题目是说,有一群赛车选手,每个人在不同的时间从起点出发,目标是到终点,每辆车一旦前面有车在它速度范围内,它就会一直跟着,不会超过。我们得算出最终形成几个车队。

很多人一上来就想着去模拟——比如一个个车推进,每步比较速度、位置啥的……兄弟,这种题模拟是找罪受,数据量大点你就歇菜了。关键是得换个角度看这个问题。

我当时刷的时候,脑子里立马冒出一个词:反向处理。

为啥要反着来?因为你正着来不知道前面有谁,得不停查找,但你如果从终点往起点想,就可以确定:最先到终点的那波人是第一批车队,然后再看后面的车是否能追上他们。如果追不上,那就是新的车队;追得上?那就算一伙的。

代码实现起来也很顺,咱可以先按位置从大到小排序,保证越靠近终点的先处理,然后对每辆车算一下它到终点需要多长时间(位置差 / 速度),只要时间比前一个大,说明追不上,是新的队伍。

贴段代码感受下👇:

defcarFleet(target, position, speed):
    pairs = sorted(zip(position, speed), reverse=True)
    times = [(target - p) / s for p, s in pairs]

    fleets = 0
    prev = 0
for t in times:
if t > prev:
            fleets += 1
            prev = t
return fleets

这个代码真的是那种“一看就懂,一改就废”的典范。主要的点就在于 times 那一行,我们先预处理每辆车到终点的时间,然后遍历判断有没有新的“老大”出现。凡是无法追上的车,它的时间必然大于前一个,就算一个新的车队。

不过讲真的,这种题给我的感觉就特别像我们团队做项目:前面有个大哥写了一堆祖传代码,你本来速度挺快,一看那堆坑爹设计,只能慢慢贴着他的节奏走……别说超车了,能不掉坑里就谢天谢地了 🤯

而且还得提一句,这题虽然是数组处理,但背后其实考的是你对「排序 + 单调栈思想」的理解,只不过这里栈不用真的写出来,而是靠时间和前后比较隐式维护。

-END-

我为大家打造了一份RPA教程,完全免费:https://www.songshuhezi.com/rpa.html

🔥虎哥私藏精品🔥

虎哥作为一名老码农,整理了全网最全《python高级架构师资料合集》,总量高达650GB,点击下方公众号回复关键字 python 全部免费领