ARTS Week 20

Algorithm

本周的算法题为 1222. 可以攻击国王的皇后

在一个 下标从 0 开始8 x 8 棋盘上,可能有多个黑皇后和一个白国王。

给你一个二维整数数组 queens,其中 queens[i] = [xQueeni, yQueeni] 表示第 i 个黑皇后在棋盘上的位置。还给你一个长度为 2 的整数数组 king,其中 king = [xKing, yKing] 表示白国王的位置。

返回 能够直接攻击国王的黑皇后的坐标。你可以以 任何顺序 返回答案。

示例 1:

alt
输入:queens = [[0,1],[1,0],[4,0],[0,4],[3,3],[2,4]], king = [0,0]
输出:[[0,1],[1,0],[3,3]]
解释:上面的图示显示了三个可以直接攻击国王的皇后和三个不能攻击国王的皇后(用红色虚线标记)。

实现代码如下:

var queensAttacktheKing = function(queens, king{
    // 初始化棋盘
    const board = Array.from({ length8 }, () => Array.from({ length8 }, () => null));
    // 将皇后的位置标记在棋盘上
    queens.forEach((queen) => {
        board[queen[0]][queen[1]] = 'Q';
    });
    const res = [];
    // 顺时针方向遍历棋盘
    const directions = [
        [-10],
        [-11],
        [01],
        [11],
        [10],
        [1-1],
        [0-1],
        [-1-1]
    ];
    for (const element of directions) {
        const [dx, dy] = element;
        let x = king[0] + dx;
        let y = king[1] + dy;
        while (x >= 0 && x < 8 && y >= 0 && y < 8) {
            if (board[x][y] === 'Q') {
                res.push([x, y]);
                break;
            }
            x += dx;
            y += dy;
        }
    }
    return res;
};

解题思路:

  1. 首先初始化一个 8*8的棋盘,将皇后的位置标记在棋盘上;
  2. 以国王为坐标系原点,顺时针遍历国王周围的 8个方向,每次沿着一个方向遍历到边界,如果遇到皇后,将其坐标加入结果数组;
  3. 返回结果数组。

Review

Hollywood actor says OpenAI Sora could cause job losses

好莱坞制片人兼演员泰勒·佩里担心人工智能将导致电影行业的就业岗位减少。他举了一个个人的例子来说明这种情况正在发生。他说他计划进行8亿美元的电影工作室扩建项目,但已经推迟了这个项目的实施,等待看看人工智能的发展情况。他认为人工智能将对就业产生巨大的影响。他在接受《好莱坞报道》网站采访时表达了他的担忧。他说:“必须有一些规定来保护我们(免受人工智能的影响)。如果没有,我就看不出我们如何生存下去。”他说OpenAI的新文字转视频工具Sora让他推迟了工作室的计划,他说他的项目“因为Sora和我看到的东西而搁置了”。

Sora是一个新的工具,可以生成长达一分钟的视频。用户只需输入提示,软件就会创建一个视频。它还可以根据一张照片创建视频。Sora的名称来自日语单词“天空”,纽约时报说这是为了展示工具的“无限创意潜力”。泰勒·佩里表示,他理解人工智能在电影制作中的有用性,但他担心会导致就业岗位减少。他说:“这让我非常担心行业中的所有人。我立刻开始考虑到受到影响的行业中的所有人,包括演员和编辑。”他补充道:“我认为这将触及我们行业的每个角落。”

注:我只想到《浪客剑心》里那句台词:“创造时代的并不是刀,而是使用刀的人。”

Tip

git clone fatal:发送请求时出错...

在使用git clone项目时,提示以下信息,然后一直需要提示输入用户名和密码。

fatal: 发送请求时出错。
fatal: 服务器提交了协议冲突. Section=ResponseStatusLine

从上面可知,应该是git配置上面出现了问题,所以就打算将git配置初始化,通过以下命令查看git配置文件所在位置,并将所有.gitconfig文件全都删除。

git config --list --show-origin

重新打开Git Bash Here,使用以下命令,然后配置Git在本地存储凭据信息,以便自动记住用户名和密码,避免每次进行Git操作时都需要输入凭据信息。

git config --global credential.helper store

然后只要输入一次用户名和密码,后续操作就都不需要输入了。

Share

研发效能度量实践者指南(万字长文)-腾讯云开发者社区-腾讯云 (tencent.com)

  1. “我虽然没有功劳,但是我也有苦劳。” 大部分人可能只关注自己的付出,但并不关心付出所获得的实际效果。作为管理者应该为“苦劳鼓掌,为功劳付钱”。而功劳和苦劳的体现也需要借助客观的度量数据来体现,否则团队中的成员会逐渐陷入碌碌无为的窘境。
  2. 管理者往往会把目标拆解为可度量的指标。但是,目标和指标常常并不是简单的全局与局部的关系。目标的拆解过程看起来很顺畅,是那么地理所当然,但是当把拆解完的指标合并起来的的时候,结果往往让人哭笑不得。有一个笑话说的是,“你问人工智能,我要找一个女朋友,像安·海瑟薇一样的大眼睛,像朱莉娅·罗伯茨一样的大嘴,喜爱运动,陆上运动、水上运动都会。人工智能就根据这几个指标给出了母青蛙的答案”。所以,指标和目标常常并不是充分必要的关系。
  3. 指标是为了实现目标的,但是在实践过程中,指标很多时候却是与目标为敌的。管理者常常把目标拆解为指标,时间久了以后,他就只知道指标,而忘了背后更重要的目标。如果目标是林,那么指标就是木,时间久了就是只见树木,不见森林。这个时候忘记了目标是什么的管理者就会变得非常短视。那些不懂数据的人很糟糕,而最最糟糕的人是那些只看数字的人。在福特汽车的发展史上,有一段至暗时期。那些实践经验丰富,但是没有上过商学院的的老一辈管理层被干掉,取而代之的名校管理背景的数据分析师,公司试图通过精细化的数字管理来实现业务的增长。由于这些数据分析师并不熟悉业务,所以就只能看度量数据,越是不懂业务就越依赖度量数据来做决策,最后使整个公司陷入了泥潭。软件研发也有类似的尴尬,为了更好的代码质量,所以就制定了严格的代码测试覆盖率要求。时间一久,大家都机械性地追求这个指标,而忘记了当时设立这个指标的初衷,于是就出现了高覆盖率的大量单元测试中没有断言这样尴尬的局面。

本文由 mdnice 多平台发布

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/740730.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【JVM】字节码指令 invokevirtual

在Java虚拟机&#xff08;JVM&#xff09;中&#xff0c;invokevirtual 是一个字节码指令&#xff0c;用于调用对象实例的方法。它的主要作用是执行对象的虚方法调用&#xff0c;遵循Java语言中的动态分派机制。 例如&#xff0c;假设我们有以下Java代码&#xff1a; Java 1…

AI与广告创意:大模型在广告生成中的应用与挑战

AI与广告创意&#xff1a;大模型在广告生成中的应用与挑战 摘要&#xff1a; 本文将探讨AI大模型在广告创意生成中的应用&#xff0c;并分析其面临的挑战。 引言&#xff1a; 在当今信息爆炸的时代&#xff0c;广告创意生成的重要性不言而喻。广告创意需要吸引目标受众的注…

多维时序 | Matlab实现VMD-CNN-BiLSTM变分模态分解结合卷积神经网络结合双向长短期记忆神经网络多变量时间序列预测

多维时序 | Matlab实现VMD-CNN-BiLSTM变分模态分解结合卷积神经网络结合双向长短期记忆神经网络多变量时间序列预测 目录 多维时序 | Matlab实现VMD-CNN-BiLSTM变分模态分解结合卷积神经网络结合双向长短期记忆神经网络多变量时间序列预测预测效果基本介绍程序设计参考资料 预测…

stm32是用标准库还是hal库?

我大学几年一直都是使用标准库&#xff0c;然后17年毕业第一份工作转为HAL库&#xff0c;主要也是公司需求没办法。然后之后的数年我都是建议转HAL库&#xff0c;并不是这个库有多好&#xff0c;相反小问题很多&#xff0c;但是有一个&#xff0c;这是官方一直在开发维护的库&a…

软件开发秘籍:打造高效的分支管理策略

版本控制策略&#xff1a;如何制定合理的分支管理策略 引言 版本控制是软件开发中至关重要的一环&#xff0c;而合理的分支管理策略则是版本控制成功的关键。本文将介绍如何制定合理的分支管理策略&#xff0c;并通过实际案例和技巧&#xff0c;帮助读者更好地理解和应用。 …

SpringBoot3快速入门

目录 一、快速创建项目 二、手动创建一个工程 一、快速创建项目 1、使用官网提供的spring组件创建一个springboot3工程&#xff0c;springboot3要使用JDK17以上的版本 选择配置点击finish&#xff0c;刷新maven 创建一个controller层&#xff0c;写一个demo&#xff0c;点击运…

学习vue3第四节(ref以及ref相关api)

主要记录以下api&#xff1a;ref()、isRef()、unref()、 shallowRef()、triggerRef()、customRef() 1、ref() 定义 接受一个内部值&#xff0c;返回一个响应式的、可更改的 ref 对象&#xff0c;此对象只有一个指向其内部值的属性 .value&#xff0c;.value属性用于追踪并且存…

二十、HTML

一、什么是HTML 超文本标记语言&#xff0c;不是一种编程语言&#xff0c;而是一种标记语言&#xff0c;描述网页的语言&#xff0c;HTML使用标签描述网页中图片、文本、音乐、视频、超链接等。 二、常用标签 1、标题标签 <h1>一级标题</h1> 1-6 2、段落标签<p&…

Github 2024-03-13 C开源项目日报 Top10

根据Github Trendings的统计,今日(2024-03-13统计)共有10个项目上榜。根据开发语言中项目的数量,汇总情况如下: 开发语言项目数量C项目10C++项目1Curl:用于传输数据的命令行工具和库 创建周期:5067 天开发语言:C协议类型:OtherStar数量:32994 个Fork数量:6208 次关注人…

vscode使用npm命令无反应,而终端可以的解决办法

如若你遇到这种情况 使用命令 get-command npm 去下面这个路径把它删掉就可以了

在linux中如何后台运行java项目(详细)

目录 1.查看是否安装有jdk环境 2.将打包好的jar上传到linux服务器上 3.运行java程序 直接运行&#xff1a; 使用 & 使用 nohup & 扩展知识 1.查看是否安装有jdk环境 java -version 如果可以查看到jdk版本 &#xff0c;那就代表环境配置好了 2.将打包好的jar上…

Java JUC 笔记(2)

Java JUC 笔记&#xff08;2&#xff09; 锁框架 JDK5以后增加了Lock接口用来实现锁功能&#xff0c;其提供了与synchronized类似的同步功能&#xff0c;但是在使用时手动的获取和释放锁 Lock和Condition锁 这里的锁与synchronized锁不太一样&#xff0c;我们可以认为是Loc…

【硬件工程师面经整理30_工艺现状】

请描述一下国内的工艺现状 工艺水平&#xff1a;中国的器件工艺水平在不断提高&#xff0c;已经可以制造出高性能、高可靠性的器件产品。在集成电路领域&#xff0c;中国已经具备了一定的制造能力和产业规模&#xff0c;能够生产一些中低端的芯片产品。在光电器件、传感器、功…

【YOLOv9】训练模型权重 YOLOv9.pt 重新参数化轻量转为 YOLOv9-converted.pt

【YOLOv9】训练模型权重 YOLOv9.pt 重新参数化轻量转为 YOLOv9-converted.pt 1. 模型权重准备2. 模型重新参数化2.1 文件准备2.2 参数修改2.3 重新参数化过程 3. 重新参数化后模型推理3.1 推理超参数配置3.2 模型推理及对比 4. onnx 模型导出&#xff08;补充内容&#xff09;4…

Java开发从入门到精通(一):Java 数据库编程

三、Java 数据库编程 JDBC 基础&#xff1a;连接数据库、执行 SQL 查询 使用 JDBC 操作数据库 数据库连接池和事务处理 数据库基础知识&#xff1a; 数据库概念和模型 SQL 语言 关系型数据库架构 JDBC 编程&#xff1a; JDBC 概述和工作原理 连接数据库 执行 SQL 查询和更新 处…

蓝桥杯第1595题——和与乘积

题目描述 给定一个数列 A(a1​,a2​,⋯,an​)&#xff0c;问有多少个区间 [L,R] 满足区间内元素的乘积等于他们的和。 输入描述 输入第一行包含一个整数 n&#xff0c;表示数列的长度。 第二行包含 n 个整数&#xff0c;依次表示数列中的数 a1​,a2​,⋯,an​。 输出描述 …

java面试题(持续更新.. ...)

JDK和JRE和JVM区别 JVM是运行字节码的虚拟机&#xff0c;JRE在JVM的基础上添加了基本的类库&#xff0c;JDK在JRE的基础上添加了一些编译的工具(例如&#xff1a;javac等)… … java和c的区别 java和c都是面向对象都支持继承&#xff0c;但是c是多继承&#xff0c;java是单继承…

【硬件工程师面经整理31_非技术问答(主管面)】

文章目录 为什么要来XX对这个岗位工作的了解你期待一个怎么样的工作环境工作强度大/是否愿意加班&#xff0c;怎么看压力大的时候怎么办&#xff1f;个人优势/性格优缺点。团队协作你觉得最重要的是什么未来有什么职业规划如果都给你发了offer你会怎么选&#xff1f;期待的年薪…

安塔利斯升级php8

1、includes/classes/class.Database.php 255行 multi_query方法加返回类型 :bool query方法加返回类型&#xff1a;: mysqli_result|bool 2、includes/classes/class.Session.php on line 91 Optional parameter $planetID declared before required parameter $dpath is…

漏洞发现-漏扫项目篇NucleiYakitGobyAfrogXrayAwvs联动中转被动

知识点 1、综合类-Burp&Xray&Awvs&Goby 2、特征类-Afrog&Yakit&Nuclei 3、联动类-主动扫描&被动扫描&中转扫描 章节点&#xff1a; 漏洞发现-Web&框架组件&中间件&APP&小程序&系统 扫描项目-综合漏扫&特征漏扫&被动…