绝了!身边的都在作弊笔试,面试也可以作弊~

科技   2024-11-19 14:00   山西  
最近看到一个帖子,直接把我给看笑了。有网友爆料,笔试能作弊,面试也能“操作”,甚至还有人热心传授心得,来了一句:“真没必要自己做!”这话直接把原帖主气到崩溃。

网友评论更绝:“简历是假的,笔试是假的,面试是假的,但 offer 是真的。我这边,简历是真的,笔试是真的,面试是真的,所以邮箱是空的。”太扎心了,懂得都懂。😂
听完这事真的满脑子问号:现在面试还能“外挂”了?想想自己当初为了一次面试,刷 LeetCode 刷到怀疑人生,调代码调到凌晨两点,为的就是给面试官展示“真实实力”。
结果人家?直接一套“作弊组合拳”,轻轻松松抱回大厂 offer。说实话,这事儿真的让人心态不平衡。
但转念一想,靠假简历、假笔试混进去的人,工作中迟早要露馅儿啊。程序员这行能不能干得下去,实力摆在那儿,PPT 做得再漂亮,代码跑不通,迟早得吃瘪。
你们对这种事怎么看?是觉得作弊拿到 offer 算“高手”?

算法题:分发糖果

今天跟大家聊一个算法题:分发糖果。这是一个挺经典的面试题,考的是逻辑和贪心算法(对,就是那个听着挺“贪”的算法😂)。
问题是这样的:有一群小朋友站成一排,每个小朋友都有一个评分。老师要按照以下规则给他们发糖果:
  1. 每个小朋友至少得有一个糖果🍬。
  2. 相邻的孩子中,评分高的那个得比另一个多拿糖。
老师的预算显然有限,我们得帮她用最少的糖果满足这些规则。咋整?🤔

分析一下问题

看到这个题,我第一反应是——好家伙,这就是标准的贪心算法场景啊!因为每个孩子的糖果分配只跟相邻的孩子有关系,所以可以通过两遍遍历来搞定问题。

解题思路

我们先来搞明白要怎么分糖果才能既满足条件,又尽量少浪费糖:
  1. 从左往右遍历:保证每个孩子比左边评分低的拿的糖少。
  2. 从右往左遍历:保证每个孩子比右边评分低的拿的糖少。
两遍下来,每个孩子的糖果数就是满足规则的最少数量。

代码实现

为了直观一点,我给大家撸段Python代码,稍微带点注释,顺便吐槽一下自己写代码时的脑回路😂。
def candy(ratings):
    n = len(ratings)
    candies = [1] * n  # 初始化,每人至少有一个糖果
    
    # 从左往右,保证每个孩子比左边分高时多拿糖
    for i in range(1, n):
        if ratings[i] > ratings[i - 1]:
            candies[i] = candies[i - 1] + 1
    
    # 从右往左,保证每个孩子比右边分高时多拿糖
    for i in range(n - 2-1-1):
        if ratings[i] > ratings[i + 1]:
            candies[i] = max(candies[i], candies[i + 1] + 1)  # 取最大值以满足两个条件
    
    return sum(candies)  # 总糖果数

看看运行效果

举个栗子🌰:
ratings = [102]
print(candy(ratings))  # 输出:5
咋算的?先初始化每人一个糖果:[1, 1, 1]。
  • 左->右遍历后:[1, 1, 2]。
  • 再右->左遍历:[2, 1, 2]。
最后总共是 2 + 1 + 2 = 5 颗糖果。完美!

贪心算法的“贪”

有人可能会问了:“为什么这题适合用贪心算法?”🤔
其实,贪心算法的核心思想就是每次只考虑局部最优解。比如在这题里,先从左往右“贪”一遍,再从右往左“补”一遍,两次贪心一结合,全球问题就解决了!
其实这题看着不难,但细节真不少。比如你一开始可能觉得初始化糖果数是0,但别忘了规则要求每人至少一颗糖,这一点马虎不得啊!
还有个坑点是第二遍遍历的时候,得用 max 来处理冲突,否则可能会不符合规则。算法题就是这样,看着简单,稍不注意就GG了。
你们要是有更骚的解法,记得评论区分享一下啊~ 👇
对编程、职场感兴趣的同学,大家可以联系我微信:golang404,拉你进入“程序员交流群”。
🔥虎哥私藏精品 热门推荐🔥

虎哥作为一名老码农,整理了全网最全《python高级架构师资料合集》

资料包含了《IDEA视频教程》《最全python面试题库》《最全项目实战源码及视频》《毕业设计系统源码》,总量高达650GB全部免费领取

Python技术迷
回复:python,领取Python面试题。分享AI编程,AI工具,Python技术栈,Python教程,Python编程视频,Pycharm项目,Python爬虫,Python数据分析,Python核心技术,Python量化交易。
 最新文章