当前位置: 首页 > news >正文

加班的员工,循环的电池

宁德时代回应"896"

6月17日,宁德时代因内部宣告「实行 895 工作制,大干 100 天,外籍人员不强制」冲上热搜,虽后来辟谣 只是发出号召,并无强制员工实行"895"工作制,但舆论并无消退。

昨天(6月25日)在夏季达沃斯论坛现场,宁德时代董事长兼 CEO 曾毓群再次回应此事,强调道:"奋斗一百天,就是号召大家去练好基本功,我们并没有强迫大家。"

但与此同时,曾毓群还在会议上举例:"其他人做出的电池是无法被循环的,价格可能是一块钱,我做出来的电池是 5000 个循环,我是一块五毛钱,所以从价值的角度,平均下来我们是最有价值的。"

emmmm ...

两段话分开看都没什么问题,凑在了一起,总有种自己被暗讽为那个"循环电池"的意味。

相差不远的行业薪资水平,但要却"被鼓舞"执行"895"工作制,是否像极了那个只贵 5 毛,但却能循环 5000 遍的 🔋。

宁德时代作为曾经的"新能源时代的茅台",希望其对于产品性价比的理解不要下放到对员工待遇上。

对此,你怎么看?

...

回归主线。

来一道简简单单周三题。

题目描述

平台:LeetCode

题号:593

给定 2D 空间中四个点的坐标 abc 和 d,如果这四个点构成一个正方形,则返回 true

点的坐标表示为 ,输入不是按任何顺序给出的。

一个有效的正方形有四条等边和四个等角(90度角)。

示例 1:

输入: a = [0,0], b = [1,1], c = [1,0], d = [0,1]

输出: True

示例 2:

输入:a = [0,0], b = [1,1], c = [1,0], d = [0,12]

输出:false

示例 3:

输入:a = [1,0], b = [-1,0], c = [0,1], d = [0,-1]

输出:true

提示:

计算几何

根据题意进行模拟即可。

从给定的 4 个顶点中选 3 个顶点,检查其能否形成「直角三角形」,同时保存下来首个直角三角形的直角边边长,供后续其余直角三角形进行对比(注意不能共点,即直角边长不能为 0)。

Java 代码:

class Solution {
    long len = -1;
    public boolean validSquare(int[] a, int[] b, int[] c, int[] d) {
        return calc(a, b, c) && calc(a, b, d) && calc(a, c, d) && calc(b, c, d);
    }
    boolean calc(int[] a, int[] b, int[] c) {
        long l1 = (a[0] - b[0]) * (a[0] - b[0]) + (a[1] - b[1]) * (a[1] - b[1]);
        long l2 = (a[0] - c[0]) * (a[0] - c[0]) + (a[1] - c[1]) * (a[1] - c[1]);
        long l3 = (b[0] - c[0]) * (b[0] - c[0]) + (b[1] - c[1]) * (b[1] - c[1]);
        boolean ok = (l1 == l2 && l1 + l2 == l3) || (l1 == l3 && l1 + l3 == l2) || (l2 == l3 && l2 + l3 == l1);
        if (!ok) return false;
        if (len == -1) len = Math.min(l1, l2);
        else if (len == 0 || len != Math.min(l1, l2)) return false;
        return true;
    }
}

C++ 代码:

class Solution {
public:
    long len = -1;
    bool validSquare(vector<int>& a, vector<int>& b, vector<int>& c, vector<int>& d) {
        return calc(a, b, c) && calc(a, b, d) && calc(a, c, d) && calc(b, c, d);
    }
    bool calc(vector<int>& a, vector<int>& b, vector<int>& c) {
        long l1 = (a[0] - b[0]) * (a[0] - b[0]) + (a[1] - b[1]) * (a[1] - b[1]);
        long l2 = (a[0] - c[0]) * (a[0] - c[0]) + (a[1] - c[1]) * (a[1] - c[1]);
        long l3 = (b[0] - c[0]) * (b[0] - c[0]) + (b[1] - c[1]) * (b[1] - c[1]);
        bool ok = (l1 == l2 && l1 + l2 == l3) || (l1 == l3 && l1 + l3 == l2) || (l2 == l3 && l2 + l3 == l1);
        if (!ok) return false;
        if (len == -1) len = min(l1, l2);
        else if (len == 0 || len != min(l1, l2)) return false;
        return true;
    }
};

Python 代码:

class Solution:
    def validSquare(self, a: list, b: list, c: list, d: list) -> bool:
        length = -1
        def calc(a, b, c):
            nonlocal length
            l1 = (a[0] - b[0]) ** 2 + (a[1] - b[1]) ** 2
            l2 = (a[0] - c[0]) ** 2 + (a[1] - c[1]) ** 2
            l3 = (b[0] - c[0]) ** 2 + (b[1] - c[1]) ** 2
            ok = (l1 == l2 and l1 + l2 == l3) or (l1 == l3 and l1 + l3 == l2) or (l2 == l3 and l2 + l3 == l1)
            if not ok: return False
            if length == -1: length = min(l1, l2)
            elif length == 0 or length != min(l1, l2): return False
            return True
        return calc(a, b, c) and calc(a, b, d) and calc(a, c, d) and calc(b, c, d)

TypeScript 代码:

let len = -1
function validSquare(a: number[], b: number[], c: number[], d: number[]): boolean {
    len = -1
    return calc(a, b, c) && calc(a, b, d) && calc(a, c, d) && calc(b, c, d)
};
function calc(a: number[], b: number[], c: number[]): boolean {
    const l1 = (a[0] - b[0]) * (a[0] - b[0]) + (a[1] - b[1]) * (a[1] - b[1])
    const l2 = (a[0] - c[0]) * (a[0] - c[0]) + (a[1] - c[1]) * (a[1] - c[1])
    const l3 = (b[0] - c[0]) * (b[0] - c[0]) + (b[1] - c[1]) * (b[1] - c[1])
    const ok = (l1 == l2 && l1 + l2 == l3) || (l1 == l3 && l1 + l3 == l2) || (l2 == l3 && l2 + l3 == l1)
    if (!ok) return false
    if (len == -1) len = Math.min(l1, l2)
    else if (len == 0 || len != Math.min(l1, l2)) return false
    return true
}
  • 时间复杂度:
  • 空间复杂度:

最后

巨划算的 LeetCode 会员优惠通道目前仍可用 ~

使用福利优惠通道 leetcode.cn/premium/?promoChannel=acoier,年度会员 有效期额外增加两个月,季度会员 有效期额外增加两周,更有超大额专属 🧧 和实物 🎁 福利每月发放。

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

欢迎关注,明天见。

相关文章:

加班的员工,循环的电池

宁德时代回应"896" 6月17日&#xff0c;宁德时代因内部宣告「实行 895 工作制&#xff0c;大干 100 天&#xff0c;外籍人员不强制」冲上热搜&#xff0c;虽后来辟谣 只是发出号召&#xff0c;并无强制员工实行"895"工作制&#xff0c;但舆论并无消退。 昨…...

windows安装Nacos并使用

Nacos&#xff08;前身为阿里巴巴的Nacos Config和Nacos Discovery&#xff09;是一个开源的动态服务发现、配置和服务管理平台&#xff0c;由阿里巴巴开发并维护。它提供了一种简单且易于使用的方式来管理微服务架构中的服务注册、发现和配置管理。 主要功能包括&#xff1a;…...

准备篇(三)网页相关知识

Java script小脚本 - 爬取 bilibili 表情Java script 小脚本 - 爬取 bilibili 表情 随便点开一个视频,注意这个页面 URL 对应的 HTML 代码中没有表情的代码, 需要先点一下评论区,然后再在这个页面 URL 对应的元素中找到表情所在的源码。(但是我不知道这个带表情 <pic…...

基于SSM的医药垃圾分类管理系统

文章目录 项目介绍主要功能截图:部分代码展示设计总结项目获取方式🍅 作者主页:超级无敌暴龙战士塔塔开 🍅 简介:Java领域优质创作者🏆、 简历模板、学习资料、面试题库【关注我,都给你】 🍅文末获取源码联系🍅 项目介绍 基于SSM的医药垃圾分类管理系统,java项目…...

web 应用防火墙的作用是什么

产品定义 Web应用防火墙&#xff08;原生版&#xff09;&#xff08;CT-WAF&#xff0c;Web Application Firewall&#xff0c;简称WAF&#xff09;为用户Web应用提供一站式安全防护&#xff0c;对Web业务流量进行智能全方位检测&#xff0c;有效识别恶意请求特征并防御&#…...

搜索框回车刷新表格(解决搜索框回车刷新页面问题)

问题&#xff1a;解决搜索框回车刷新页面问题 在 Vue 中&#xff0c;keyup.enter.native 用于监听键盘的回车事件并调用 handleQuery 方法。如果页面在按下回车键后整个刷新&#xff0c;这通常不是 Vue 组件内部行为导致的&#xff0c;而是可能由于以下原因&#xff1a; 表单默…...

洞察用户需求,Xinstall数据统计App让你的App运营如虎添翼

在互联网时代&#xff0c;App推广和运营面临着前所未有的挑战。流量红利逐渐衰退&#xff0c;用户获取成本不断攀升&#xff0c;如何确保在多变的互联网环境下&#xff0c;迅速搭建起能时刻满足用户需求的运营体系&#xff0c;成为众多企业急待解决的问题。今天&#xff0c;我们…...

如何正确的报考志愿

高考&#xff0c;作为中国学子人生中的一次重要考验&#xff0c;不仅关系到学生的未来发展方向&#xff0c;也关系到家庭和社会的期待。在高考分数受限的条件下&#xff0c;选择一个心仪的专业还是选择一个知名度更高的学校&#xff0c;成为了许多考生和家长面临的难题。本文将…...

go的reflect实战

架构设计&#xff0c;有处设计&#xff0c;需要将string类型转为instance的实际类型&#xff0c;不更改业务代码的前提下&#xff0c;修改接口数据 因为涉及到unmarshal&#xff0c;因此要先判断instance中的存储的值是否已经是一个指针 如果不是&#xff0c;则需要包装为一个指…...

【学习】常用的分类网络

1. LeNet 提出时间&#xff1a;1998年最新版本&#xff1a;原始版本使用的数据集格式&#xff1a;MNIST&#xff08;28x28灰度图像&#xff09;优点&#xff1a; 结构简单&#xff0c;易于理解和实现。对于小规模图像数据集&#xff08;如MNIST&#xff09;有很好的表现。缺点…...

3. 向索引库中导入数据

1. 准备数据库对象 import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstr…...

java-冒泡排序 2

### 9. 冒泡排序的变种冒泡排序有许多变种&#xff0c;例如鸡尾酒排序&#xff08;Cocktail Shaker Sort&#xff09;&#xff0c;它是冒泡排序的双向版本。鸡尾酒排序在每次遍历时&#xff0c;先从左到右&#xff0c;再从右到左&#xff0c;双向 地“冒泡”&#xff0c;使得排…...

记一次面试

Linux查日志&#xff0c;怎么把最后1000行写到另一个文件中 在Linux中&#xff0c;如果你想要查看日志文件的最后1000行并将其写入到另一个文件中&#xff0c;你可以使用tail命令。tail命令默认用于输出文件的最后几行。 以下是如何使用tail命令将日志文件的最后1000行写入到另…...

Linux提升篇-正则表达式

文章目录 前言一、基本正则表达式基本正则表达式&#xff08;BRE&#xff09;集合 二、扩展正则表达式扩展正则表达式&#xff08;ERE&#xff09;集合 总结 前言 今天要分享的内容是正则表达式&#xff0c;完美掌握正则表达式&#xff0c;才能更好地使用"三剑客"来…...

专利、论文免费检索

数字资源 - 资源导航 - 深圳图书馆 (szlib.org.cn)https://www.szlib.org.cn/digitalResource/index.html...

【Qt】QSettings使用

1. 介绍 QSettings类提供持久的跨平台的应用程序设置存储。 2. 使用 /*********************************************************/ /* main.cpp */ int main(int argc, char *argv[]) {QApplication a(argc, argv);MainWindow w;//Settings设置a.setOrganizationName(&quo…...

Js逆向爬虫基础篇

这里写自定义目录标题 逆向技巧断点一 、请求入口定位1. 关键字搜索2. 请求堆栈3. hook4. JSON.stringify 二、响应入口定位&#xff1a;1. 关键字搜索2. hook3. JSON.parse 逆向技巧 断点 普通断点 条件断点 日志断点 XHR断点 一 、请求入口定位 1. 关键字搜索 key关…...

同步时钟系统为何能成为机场时间管理的好伙伴?

在机场这个分秒必争的环境中&#xff0c;精准的时间管理至关重要。同步时钟系统的出现&#xff0c;成为了机场时间管理的得力助手&#xff0c;为机场的高效运行和服务质量的提升发挥了关键作用。 一、同步时钟系统简介 同步时钟系统是一种通过网络技术实现时间同步的高精度计时…...

Robust semi-supervised segmentationwith timestep ensembling diffusion models

时间步合成扩散模型的鲁棒半监督分割 摘要 医学图像分割是一项具有挑战性的任务&#xff0c;由于许多数据集的大小和注释的限制&#xff0c;使得分割更加困难。消噪扩散概率模型(DDPM)最近在模拟自然图像的分布方面显示出前景&#xff0c;并成功地应用于各种医学成像任务。这…...

如何迁移R包

迁移R包涉及将一个或多个R包从一个系统转移到另一个系统。以下是迁移R包的详细步骤&#xff1a; 1. 确定要迁移的R包 首先&#xff0c;列出你在当前系统中安装的所有R包&#xff0c;或仅列出你需要迁移的R包。你可以使用以下代码列出所有安装的R包&#xff1a; installed_pa…...

在鸿蒙HarmonyOS 5中实现抖音风格的点赞功能

下面我将详细介绍如何使用HarmonyOS SDK在HarmonyOS 5中实现类似抖音的点赞功能&#xff0c;包括动画效果、数据同步和交互优化。 1. 基础点赞功能实现 1.1 创建数据模型 // VideoModel.ets export class VideoModel {id: string "";title: string ""…...

SCAU期末笔记 - 数据分析与数据挖掘题库解析

这门怎么题库答案不全啊日 来简单学一下子来 一、选择题&#xff08;可多选&#xff09; 将原始数据进行集成、变换、维度规约、数值规约是在以下哪个步骤的任务?(C) A. 频繁模式挖掘 B.分类和预测 C.数据预处理 D.数据流挖掘 A. 频繁模式挖掘&#xff1a;专注于发现数据中…...

JVM垃圾回收机制全解析

Java虚拟机&#xff08;JVM&#xff09;中的垃圾收集器&#xff08;Garbage Collector&#xff0c;简称GC&#xff09;是用于自动管理内存的机制。它负责识别和清除不再被程序使用的对象&#xff0c;从而释放内存空间&#xff0c;避免内存泄漏和内存溢出等问题。垃圾收集器在Ja…...

P3 QT项目----记事本(3.8)

3.8 记事本项目总结 项目源码 1.main.cpp #include "widget.h" #include <QApplication> int main(int argc, char *argv[]) {QApplication a(argc, argv);Widget w;w.show();return a.exec(); } 2.widget.cpp #include "widget.h" #include &q…...

三体问题详解

从物理学角度&#xff0c;三体问题之所以不稳定&#xff0c;是因为三个天体在万有引力作用下相互作用&#xff0c;形成一个非线性耦合系统。我们可以从牛顿经典力学出发&#xff0c;列出具体的运动方程&#xff0c;并说明为何这个系统本质上是混沌的&#xff0c;无法得到一般解…...

JDK 17 新特性

#JDK 17 新特性 /**************** 文本块 *****************/ python/scala中早就支持&#xff0c;不稀奇 String json “”" { “name”: “Java”, “version”: 17 } “”"; /**************** Switch 语句 -> 表达式 *****************/ 挺好的&#xff…...

【HarmonyOS 5 开发速记】如何获取用户信息(头像/昵称/手机号)

1.获取 authorizationCode&#xff1a; 2.利用 authorizationCode 获取 accessToken&#xff1a;文档中心 3.获取手机&#xff1a;文档中心 4.获取昵称头像&#xff1a;文档中心 首先创建 request 若要获取手机号&#xff0c;scope必填 phone&#xff0c;permissions 必填 …...

网站指纹识别

网站指纹识别 网站的最基本组成&#xff1a;服务器&#xff08;操作系统&#xff09;、中间件&#xff08;web容器&#xff09;、脚本语言、数据厍 为什么要了解这些&#xff1f;举个例子&#xff1a;发现了一个文件读取漏洞&#xff0c;我们需要读/etc/passwd&#xff0c;如…...

C++.OpenGL (14/64)多光源(Multiple Lights)

多光源(Multiple Lights) 多光源渲染技术概览 #mermaid-svg-3L5e5gGn76TNh7Lq {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-3L5e5gGn76TNh7Lq .error-icon{fill:#552222;}#mermaid-svg-3L5e5gGn76TNh7Lq .erro…...

并发编程 - go版

1.并发编程基础概念 进程和线程 A. 进程是程序在操作系统中的一次执行过程&#xff0c;系统进行资源分配和调度的一个独立单位。B. 线程是进程的一个执行实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位。C.一个进程可以创建和撤销多个线程;同一个进程中…...