同事年底绩效是C,提离职领导死活不让走,后来领导私下说:他走了,就没人背这个绩效了

背绩效

临近年底,朋友圈和各大职场 App 都在讨论「年终奖能拿多少个月」的话题。

除了对「能拿多少个月」有广泛的讨论以外,还有不少关注点在于「年终奖何时能发」这件事上,毕竟只有真的拿到手了,才能算是钱,而不是饼。

我一直以为,在大厂年终奖这条"鄙视链"上,最差的就是那些"零年终"的小伙伴了。

实在没想到,还有高手。

比零年终更惨的,是要背绩效,同时还得面对领导"惺惺作态"的挽留:

在这位网友发的帖子中提到,自己身边有位同事去年年中的时候是 C 绩效,到了年底还是 C,通常连续得到低绩效,就会面临各种安排(砍福利、降工资 或 被换组),于是这位同事主动提了离职。

但离谱的是,领导死活不让他走,一直以「后面还有机会」这样的说辞来进行画饼。要知道,这位领导大概率是他两次 C 绩效的"贡献者"。

在其他人看来,还以为领导是真心挽留他,这位同事留在公司一定会先苦后甜。

直到后面这位领导私下和楼主说:"他走了,没人背这个绩效了"。

后面楼主才恍然大悟,所谓的挽留,仅仅是为了让他分担一些不好的绩效罢了。

简短的一句话,"他走了,没人背这个绩效了",背后却是实实在在职场霸凌。听起来像是领导的"无奈之举",实则是领导为了应付公司指标(一定要有低绩效的组成),选择性牺牲某些同事的离谱行为。

权利在这些人手上真是可悲,那个背绩效的同事,也有自己的生活,甚至还有自己的家庭。被针对就算了,还得被耗着,被 PUA 朝着那个"有希望,但没结果(下次还是 C 绩效)"的方向去期待,最后还要反省是不是自己的问题。

新的一年,大家都能远离这些垃圾人。

对此,你有想分享的,欢迎评论区交流。

...

回归主题。

周末,继续简单小算法。

题目描述

平台:LeetCode

题号:806

我们要把给定的字符串 S 从左到右写到每一行上,每一行的最大宽度为 <math xmlns="http://www.w3.org/1998/Math/MathML"> 100 100 </math>100 个单位,如果我们在写某个字母的时候会使这行超过了 <math xmlns="http://www.w3.org/1998/Math/MathML"> 100 100 </math>100 个单位,那么我们应该把这个字母写到下一行。

我们给定了一个数组 widths,这个数组 <math xmlns="http://www.w3.org/1998/Math/MathML"> w i d t h s [ 0 ] widths[0] </math>widths[0] 代表 'a' 需要的单位, <math xmlns="http://www.w3.org/1998/Math/MathML"> w i d t h s [ 1 ] widths[1] </math>widths[1] 代表 'b' 需要的单位,..., <math xmlns="http://www.w3.org/1998/Math/MathML"> w i d t h s [ 25 ] widths[25] </math>widths[25] 代表 'z' 需要的单位。

现在回答两个问题:至少多少行能放下 S,以及最后一行使用的宽度是多少个单位?

将你的答案作为长度为 <math xmlns="http://www.w3.org/1998/Math/MathML"> 2 2 </math>2 的整数列表返回。

示例 1:

ini 复制代码
输入: 
widths = [10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10]
S = "abcdefghijklmnopqrstuvwxyz"

输出: [3, 60]

解释: 
所有的字符拥有相同的占用单位10。所以书写所有的26个字母,
我们需要2个整行和占用60个单位的一行。

示例 2:

ini 复制代码
输入: 
widths = [4,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10]
S = "bbbcccdddaaa"

输出: [2, 4]

解释: 
除去字母'a'所有的字符都是相同的单位10,并且字符串 "bbbcccdddaa" 将会覆盖 9 * 10 + 2 * 4 = 98 个单位.
最后一个字母 'a' 将会被写到第二行,因为第一行只剩下2个单位了。
所以,这个答案是2行,第二行有4个单位宽度。

注:

  • 字符串 S 的长度在 <math xmlns="http://www.w3.org/1998/Math/MathML"> [ 1 , 1000 ] [1, 1000] </math>[1,1000] 的范围。
  • S 只包含小写字母。
  • widths 是长度为 <math xmlns="http://www.w3.org/1998/Math/MathML"> 26 26 </math>26 的数组。
  • <math xmlns="http://www.w3.org/1998/Math/MathML"> w i d t h s [ i ] widths[i] </math>widths[i] 值的范围在 <math xmlns="http://www.w3.org/1998/Math/MathML"> [ 2 , 10 ] [2, 10] </math>[2,10]。

模拟

根据题意进行模拟即可。

使用变量 a 代指当前有多少行是满的,使用变量 b 代指当前填充光标所在的位置。

Java 代码:

Java 复制代码
class Solution {
    public int[] numberOfLines(int[] widths, String s) {
        int a = 0, b = 0;
        for (char c : s.toCharArray()) {
            int t = widths[c - 'a'];
            if (b + t > 100 && ++a >= 0) b = t;
            else b += t;         
        }
        if (b != 0) a++;
        return new int[]{a, b};
    }
}

C++ 代码:

C++ 复制代码
class Solution {
public:
    vector<int> numberOfLines(vector<int>& widths, string s) {
        int a = 0, b = 0;
        for (char c : s) {
            int t = widths[c - 'a'];
            if (b + t > 100 && ++a >= 0) b = t;
            else b += t;
        }
        if (b != 0) a++;
        return {a, b};
    }
};

Python 代码:

Python 复制代码
class Solution:
    def numberOfLines(self, widths: List[int], s: str) -> List[int]:
        a, b = 0, 0
        for c in s:
            t = widths[ord(c) - ord('a')]
            if b + t > 100 and a >= 0:
                a += 1
                b = t
            else:
                b += t
        if b != 0:
            a += 1
        return [a, b]

TypeScript 代码:

TypeScript 复制代码
function numberOfLines(widths: number[], s: string): number[] {
    let a = 0, b = 0;
    for (let i = 0; i < s.length; i++) {
        const t = widths[s.charCodeAt(i) - 'a'.charCodeAt(0)];
        if (b + t > 100 && ++a >= 0) b = t;
        else b += t;
    }
    if (b !== 0) a++;
    return [a, b];
};
  • 时间复杂度: <math xmlns="http://www.w3.org/1998/Math/MathML"> O ( n ) O(n) </math>O(n)
  • 空间复杂度:不使用 toCharArray 为 <math xmlns="http://www.w3.org/1998/Math/MathML"> O ( 1 ) O(1) </math>O(1),否则为 <math xmlns="http://www.w3.org/1998/Math/MathML"> O ( n ) O(n) </math>O(n)
相关推荐
lilu88888881 小时前
AI代码生成器赋能房地产:ScriptEcho如何革新VR/AR房产浏览体验
前端·人工智能·ar·vr
LCG元1 小时前
Vue.js组件开发-实现对视频预览
前端·vue.js·音视频
好评笔记1 小时前
多模态论文笔记——ViViT
论文阅读·深度学习·机器学习·计算机视觉·面试·aigc·transformer
阿芯爱编程1 小时前
vue3 react区别
前端·react.js·前端框架
烛.照1032 小时前
Nginx部署的前端项目刷新404问题
运维·前端·nginx
YoloMari2 小时前
组件中的emit
前端·javascript·vue.js·微信小程序·uni-app
幸好我会魔法2 小时前
人格分裂(交互问答)-小白想懂Elasticsearch
大数据·spring boot·后端·elasticsearch·搜索引擎·全文检索
浪浪山小白兔2 小时前
HTML5 Web Worker 的使用与实践
前端·html·html5
SomeB1oody2 小时前
【Rust自学】15.2. Deref trait Pt.1:什么是Deref、解引用运算符*与实现Deref trait
开发语言·后端·rust
何中应2 小时前
从管道符到Java编程
java·spring boot·后端