腾讯云智也是腾讯,运营开发也是开发

苦中作乐

今天在牛客网看到一位炒鸡可爱的同学的帖子。

alt

腾讯云智也是腾讯,运营开发也是开发,长沙也是深圳,go 也是 java,内包也是正职 🤣🤣🤣

同学们的苦中作乐和幽默感是真的熟练,熟练得让人心疼。

另外一位同学的留言,在幽默之余,尽是无奈。

alt

大三上:非后端不干,大三下:测试开发也是开发。

这几届的应届生是真的难,希望这种写实类的段子会越来越少吧。

...

回归主线。

五一假期,给大家安排一些「难度不大」的算法题。

题目描述

平台:LeetCode

题号:1785

给你一个整数数组 nums,和两个整数 limitgoal

数组 nums 有一条重要属性:abs(nums[i]) <= limit

返回使数组元素总和等于 goal 所需要向数组中添加的 最少元素数量 ,添加元素 不应改变 数组中 abs(nums[i]) <= limit 这一属性。

注意,如果 x >= 0,那么 abs(x) 等于 x ;否则,等于 -x

示例 1:

输入:nums = [1,-1,1], limit = 3, goal = -4

输出:2

解释:可以将 -2 和 -3 添加到数组中,数组的元素总和变为 1 - 1 + 1 - 2 - 3 = -4 。

示例 2:

输入:nums = [1,-10,9,1], limit = 100, goal = 0

输出:1

提示:

贪心

对于 nums 而言,我们可以先通过 的遍历求得其原总和 sum 为何值。

sumgoal 不等,我们可以按照「贪心」的方式里添加元素。

由于添加的元素需要满足 abs(x) <= limit 要求,因此我们添加数的范围在 之间。

为确保添加的元素最小,我们应当优先添加能够有效抵消两者差值的数值(添加 ),添加个数为

Java 代码:

class Solution {
    public int minElements(int[] nums, int limit, int goal) {
        long sum = 0;
        for (int x : nums) sum += x;
        return (int) ((Math.abs(sum - goal) + limit - 1) / limit);
    }
}

TypeScript 代码:

function minElements(nums: number[], limit: number, goal: number): number {
    let sum = 0
    for (const x of nums) sum += x
    return Math.ceil(Math.abs(sum - goal) / limit)
}

Python 代码:

class Solution:
    def minElements(self, nums: List[int], limit: int, goal: int) -> int:
        sumv = sum(nums)
        return (abs(sumv - goal) + limit - 1) // limit
  • 时间复杂度:
  • 空间复杂度:

最后

给大伙通知一下 📢 :

全网最低价 LeetCode 会员目前仍可用 ~

📅 年度会员:有效期加赠两个月!!; 季度会员:有效期加赠两周!!

🧧 年度会员:获 66.66 现金红包!!; 季度会员:获 22.22 现金红包!!

🎁 年度会员:参与当月丰厚专属实物抽奖(中奖率 > 30%)!!

专属链接:leetcode.cn/premium/?promoChannel=acoier

我是宫水三叶,每天都会分享算法知识,并和大家聊聊近期的所见所闻。

欢迎关注,明天见。

更多更全更热门的「笔试/面试」相关资料可访问排版精美的 合集新基地 🎉🎉

### 关于西安腾讯云智运维开发职位 #### 职位描述 该职位主要涉及腾讯云平台上的智能化运维系统的研发与维护工作。具体职责包括但不限于设计并实现高效的监控系统、自动化的故障处理机制以及优化现有运维流程,提高整体务稳定性与效率。此外,还将参与构建和完善面向未来的智能运维体系结构,探索AIOPS领域的新技术和新方法。 #### 任职要求 1. 计算机相关专业本科及以上学历; 2. 掌握至少一种编程语言如Python/Go/C++等,并具备良好的算法基础和数据结构理解力; 3. 对分布式计算环境有一定认识,熟悉Linux操作系统命令行操作; 4. 精通网络协议栈原理及其实际应用场景分析; 5. 拥有较强的逻辑思维能力和解决问题的能力,在面对复杂问题时能够快速定位原因并给出解决方案; 对于拥有特定技能或者经验者会优先考虑: - 曾经从事过大型网站后台支持工作的候选人将被特别关注。 - 如果申请人在机器学习方面有所涉猎,则更有利于其适应未来可能涉及到的人工智能辅助决策场景下的工作任务[^1]。 #### 相关项目 1. **智能告警压缩**:通过引入自然语言处理技术来减少重复性的报警信息干扰,帮助运维人员更加专注于真正重要的事件上。 ```python def compress_alerts(alert_list): compressed = [] seen_patterns = set() for alert in alert_list: pattern = extract_pattern_from_message(alert['message']) if pattern not in seen_patterns: compressed.append(alert) seen_patterns.add(pattern) return compressed ``` 2. **预测性维护模型训练**:利用历史日志数据分析设备健康状态变化规律,提前预警潜在风险点,从而降低意外停机概率。 ```python import pandas as pd from sklearn.model_selection import train_test_split from sklearn.ensemble import RandomForestClassifier data = pd.read_csv('historical_logs.csv') X, y = data.drop(columns=['failure']), data[['failure']] train_X, test_X, train_y, test_y = train_test_split(X, y, random_state=42) model = RandomForestClassifier().fit(train_X, train_y.values.ravel()) ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值