拼多多开了68w年薪,我却犹豫了。。

文摘   2024-12-04 14:08   湖北  
这是苍何的第 245 篇原创!

大家好,我是苍何。

中午吃麻辣烫刷手机看到一位大佬,秋招拿了 17 个 offer,像什么阿里、百度、字节、美团、京东,但凡是你听过的没听过的大厂基本都拿了个遍,年包都在 40w 以上,更猛的是拼多多直接给了 68w 的年薪,由于太超预期,大佬纠结要不要去拼多多。

你是不是也和苍何一样好奇,究竟是什么神仙一下子可以拿这么多的 offer?从楼主的介绍来看,本硕 top 3 ,首先学历方面是顶呱呱,其次在抉择上,抵抗住了算法岗的冲击,直接转战开发,相对岗位也较多。

这算不算是小镇做题家的天花板了?68 w 年薪真是不敢想象,干个几年,就是一套房,直呼好家伙。

所以,虽然计算机这些年一直被唱衰,工作也越难越难找,但金字塔效应越来越明显了,站在塔尖的那些人才们,能拿多个大厂的 offer,年薪也一路狂飙,停不下来。

不过高薪的背后,依旧是时间成本的付出,就我这么多年的经验来看,不加班的开发工作就好比大海捞针,少之又少,工作多年后,也越来越对这种加班的氛围,感到无可奈何。

今天苍何的同事就裸辞了,虽然只有一句简短的:看开了,想摆烂了,不想上班。却能看出其内心的挣扎和无奈。

加班的夜晚总是会反思一些虚无的东西,有时也想奋不顾身,孤注一掷,但辞职后呢?又能干什么呢?

昨天五点半准点就下班了,电梯上遇见大老板,语无伦次的说:我妈妈被锁在外面了,我得赶紧先回去。

大老板说:已经下班了呀,你不用解释呀。

尴尬,到点下班不是应该的吗?什么时候成了战战兢兢的蚂蚱了?

以前,我是个螺丝钉,见领导没走,我也不敢走,如今,我是个小领导,见团队小伙伴没走,我也不敢走。

所以,到底,是什么一直让我畏畏缩缩?

或许是因为贫穷,哈哈哈,但凡我有 68 w 的年薪,我大概或许敢准点下班吧。

好啦,如果是你拿到了 68 w 年薪,你会选择接受 offer 吗?欢迎评论区讨论。

...

回归主题。

今天来一道拼多多开发考过的一道面试算法题,给枯燥的牛马生活加加油😂。

题目描述

平台:LeetCode

题号:172

题目描述:阶乘后的零

给定一个整数 n,返回 n! 结果中尾随零的数量。

提示:
n! = n × (n - 1) × (n - 2) × ... × 3 × 2 × 1


示例 1:

输入:n = 3
输出:0
解释:3! = 6,不含尾随 0。

示例 2:

输入:n = 5
输出:1
解释:5! = 120,有一个尾随 0。

示例 3:

输入:n = 0
输出:0


提示:

  • 0 <= n <= 10⁴


解题思路

  1. 尾随零的本质:尾随零由因子 10 产生,而 10 = 2 × 5。在阶乘中,因数 2 的个数总是多于 5 的个数。因此,尾随零的个数取决于阶乘中因数 5 的个数。

  2. 计算因数 5 的个数

  • 对于 n = 25,有 25 ÷ 5 = 5 个数可被 5 整除(即 5, 10, 15, 20, 25)。

  • 然而,25 本身还能提供额外一个因数 5,所以需要继续计算 25 ÷ 5² = 1

  • 对于任意整数 n,阶乘中的因数 5 不仅来自于 5,还来自于 等。例如:

  • 因此,总因数 5 的个数为:n ÷ 5 + n ÷ 5² + n ÷ 5³ + ...,直到结果为 0。

  • 复杂度分析

    • 时间复杂度:O(log₅n),因为每次除以 5。

    • 空间复杂度:O(1),只需常数空间存储结果。


    代码实现

    Java 实现

    public class FactorialTrailingZeroes {
    public int trailingZeroes(int n) {
    int count = 0;
    while (n > 0) {
    n /= 5; // 每次除以 5
    count += n; // 累加因数 5 的个数
    }
    return count;
    }
    }

    C++ 实现

    #include <iostream>
    using namespace std;

    class Solution {
    public:
    int trailingZeroes(int n) {
    int count = 0;
    while (n > 0) {
    n /= 5; // 每次除以 5
    count += n; // 累加因数 5 的个数
    }
    return count;
    }
    };

    Python 实现

    def trailing_zeroes(n):
    count = 0
    while n > 0:
    n //= 5 # 每次除以 5
    count += n # 累加因数 5 的个数
    return count

    # 示例
    print(trailing_zeroes(5)) # 输出: 1
    print(trailing_zeroes(25)) # 输出: 6

    复杂度分析

    • 时间复杂度:O(log₅n),因为每次除以 5。

    • 空间复杂度:O(1),仅使用了一个变量 count 来存储因数 5 的个数。

    ending

    你好呀,我是苍何。是一个每天都在给自家仙人掌讲哲学的执着青年,我活在世上,无非想要明白些道理,遇见些有趣的事。倘能如我所愿,我的一生就算成功。共勉 💪

    点击关注下方账号,你将感受到一个朋克的灵魂,且每篇文章都有惊喜。

    感谢大家一直以来的阅读、在看和转发,我会把流量主收益都用来发红包,大家可在公众号页面发送相关暗号关键词获取抽奖,每一篇文章会给到一个不同的暗号,对应的抽奖都是独立的,此篇暗号为【68】,在后台回复【68】,即可点击进去参与抽奖!抽奖内容、金额、个数等都无变化,在开奖前参与抽奖,操作均有效。

    注意,后台(不是评论区,是后台)回复【68】即可参与抽奖。
    后台回复(不是评论区,是后台)即可参与抽奖。
    后台回复(不是评论区,是后台)即可参与抽奖。

    就像大家之前回复【八股】一样。

    【我爱这个魔幻的世界】

    苍何
    独立开发者,专注于Java企业级开发,AI 工具提效。偶尔闪光、经常表达、总是真诚。
     最新文章