LeetCode 第 16 场双周赛(402/822,前48.9%)

文章目录

    • 1. 比赛结果
    • 2. 题目
      • LeetCode 1299. 将每个元素替换为右侧最大元素 easy
      • LeetCode 1300. 转变数组后最接近目标值的数组和 medium
      • LeetCode 1302. 层数最深叶子节点的和 medium
      • LeetCode 1301. 最大得分的路径数目 hard

1. 比赛结果

做出了2道题,第二道题耽搁时间有点长,放弃了,第四题在时间到了后一会就做出来了。
在这里插入图片描述
在这里插入图片描述

2. 题目

LeetCode 1299. 将每个元素替换为右侧最大元素 easy

给你一个数组 arr ,请你将每个元素用它右边最大的元素替换,如果是最后一个元素,用 -1 替换。
完成所有替换操作后,请你返回这个数组。
示例: 输入:arr = [17,18,5,4,6,1]
输出:[18,6,6,6,1,-1]
提示:
1 <= arr.length
<= 10^4 1 <= arr[i] <= 10^5

解题:
从后往前遍历,记录当前的最大值。

class Solution {
public:vector<int> replaceElements(vector<int>& arr) {int m = arr.back(), origin;arr.back() = -1;for(int i = arr.size()-2; i >= 0; --i){origin = arr[i];//记录原始数据arr[i] = m;//右侧的最大值填入m = max(m, origin);//更新最大值}return arr;}
};

LeetCode 1300. 转变数组后最接近目标值的数组和 medium

LeetCode 1302. 层数最深叶子节点的和 medium

给你一棵二叉树,请你返回层数最深的叶子节点的和。

在这里插入图片描述

输入:root = [1,2,3,4,5,null,6,7,null,null,null,null,8]
输出:15
提示:
树中节点数目在 1 到 10^4 之间。 每个节点的值在 1 到 100 之间。

解题:按层遍历即可

class Solution {
public:int deepestLeavesSum(TreeNode* root) {queue<TreeNode*> q;int sum, n;q.push(root);while(!q.empty()){n = q.size();sum = 0;while(n--){sum += q.front()->val;if(q.front()->left)q.push(q.front()->left);if(q.front()->right)q.push(q.front()->right);q.pop();}}return sum;}
};

LeetCode 1301. 最大得分的路径数目 hard

给你一个正方形字符数组 board ,你从数组最右下方的字符 ‘S’ 出发。

你的目标是到达数组最左上角的字符 ‘E’ ,数组剩余的部分为数字字符 1, 2, …, 9 或者障碍 ‘X’。在每一步移动中,你可以向上、向左或者左上方移动,可以移动的前提是到达的格子没有障碍。

一条路径的 「得分」 定义为:路径上所有数字的和。

请你返回一个列表,包含两个整数:第一个整数是 「得分」 的最大值,第二个整数是得到最大得分的方案数,请把结果对 10^9 + 7 取余。

如果没有任何路径可以到达终点,请返回 [0, 0] 。

示例 1:
输入:board = ["E23","2X2","12S"]
输出:[7,1]示例 2:
输入:board = ["E12","1X1","21S"]
输出:[4,2]示例 3:
输入:board = ["E11","XXX","11S"]
输出:[0,0]提示:
2 <= board.length == board[i].length <= 100

解题:
dp二维数组存储一个pair(得分,方案数)

class Solution {int n, i, j;
public:vector<int> pathsWithMaxScore(vector<string>& board) {n = board.size();board[0][0] = board[n-1][n-1] = '0';//方便后面处理起点和终点的得分vector<vector<pair<int,int>>> dp(n,vector<pair<int,int>> (n, make_pair(0,0)));dp[n-1][n-1].second = 1;//起点的方案数为1for(i = n-2; i >= 0 && board[i][n-1] != 'X'; --i){	//初始化最后1列dp[i][n-1].first = dp[i+1][n-1].first+board[i][n-1]-'0';//得分累加dp[i][n-1].second = 1;//方案数只有1种}for(i = n-2; i >= 0 && board[n-1][i] != 'X'; --i){	//初始化最后1行dp[n-1][i].first = dp[n-1][i+1].first+board[n-1][i]-'0';dp[n-1][i].second = 1;}for(i = n-2; i >= 0; i--){for(j = n-2; j >= 0; j--){	//填写其他dp数组if(board[i][j] != 'X')//没有障碍{if(dp[i+1][j+1].second)//右下角 如果有方案数,则可以过来{if(dp[i+1][j+1].first+board[i][j]-'0' > dp[i][j].first)//得分大,更新得分,方案数{dp[i][j].first = dp[i+1][j+1].first+board[i][j]-'0';dp[i][j].second = dp[i+1][j+1].second%1000000007;}else if(dp[i+1][j+1].first+board[i][j]-'0' == dp[i][j].first)//得分相等,方案数相加{dp[i][j].second += dp[i+1][j+1].second%1000000007;}}if(dp[i][j+1].second)//右边{if(dp[i][j+1].first+board[i][j]-'0' > dp[i][j].first){dp[i][j].first = dp[i][j+1].first+board[i][j]-'0';dp[i][j].second = dp[i][j+1].second%1000000007;}else if(dp[i][j+1].first+board[i][j]-'0' == dp[i][j].first){dp[i][j].second += dp[i][j+1].second%1000000007;}}if(dp[i+1][j].second)//下边{if(dp[i+1][j].first+board[i][j]-'0' > dp[i][j].first){dp[i][j].first = dp[i+1][j].first+board[i][j]-'0';dp[i][j].second = dp[i+1][j].second%1000000007;}else if(dp[i+1][j].first+board[i][j]-'0' == dp[i][j].first){dp[i][j].second += dp[i+1][j].second%1000000007;}}}}}return {dp[0][0].first, dp[0][0].second%1000000007};//得分,方案数}
};

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

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

相关文章

CS 期刊哪家强?CCF 发布最新期刊分级目录!

文 | python分级目录中国计算机学会&#xff08;CCF&#xff0c;就是评ABC类会议的那个机构&#xff09;&#xff0c;在2022年2月19日刚刚发布了《计算领域高质量科技期刊分级目录》。该目录包含T1、T2、T3三类期刊&#xff0c;分别为T1类期刊16本&#xff0c;T2类期刊23本&…

Spring Cloud构建微服务架构:分布式服务跟踪(整合logstash)【Dalston版】

通过之前的入门示例&#xff0c;我们已经为trace-1和trace-2引入了Spring Cloud Sleuth的基础模块spring-cloud-starter-sleuth&#xff0c;实现了为各微服务的日志信息中添加跟踪信息的功能。但是&#xff0c;由于日志文件都离散的存储在各个服务实例的文件系统之上&#xff0…

会议交流 | 第十六届全国知识图谱与语义计算大会(8月24-27日)

点击阅读原文&#xff0c;进入 CCKS2022 官方网站。OpenKGOpenKG&#xff08;中文开放知识图谱&#xff09;旨在推动以中文为核心的知识图谱数据的开放、互联及众包&#xff0c;并促进知识图谱算法、工具及平台的开源开放。

1000层的Transformer,诞生了!

卖萌屋今日学术精选大家好&#xff0c;我是卖萌酱。今天下午卖萌屋作者群里一位MILA实验室的大佬在临睡前&#xff08;蒙特利尔时间凌晨0点半&#xff09;甩出来一篇论文&#xff1a;大佬表示太困了&#xff0c;肝不动了&#xff0c;于是卖萌酱左手抄起一罐咖啡&#xff0c;右手…

LeetCode 1305. 两棵二叉搜索树中的所有元素(二叉树迭代器)

1. 题目 给你 root1 和 root2 这两棵二叉搜索树。 请你返回一个列表&#xff0c;其中包含 两棵树 中的所有整数并按 升序 排序。. 提示&#xff1a; 每棵树最多有 5000 个节点。 每个节点的值在 [-105, 105] 之间。 2. 二叉树迭代器 按照中序迭代&#xff0c;比较两个迭代…

Spring Cloud构建微服务架构:分布式服务跟踪(跟踪原理)【Dalston版】

通过上一篇《分布式服务跟踪&#xff08;入门&#xff09;》的例子&#xff0c;我们已经通过Spring Cloud Sleuth往微服务应用中添加了实现分布式跟踪具备的基本要素。下面通过本文来详细说说实现分布式服务跟踪的一些要点。 分布式系统中的服务跟踪在理论上并不复杂&#xff0…

竞赛报名 | “未来杯”第二届知识图谱锦标赛火热报名中,最高奖金32000元!...

转载公众号 | AI Timer继2021年“未来杯”系列赛事之AI学术联赛暨首届人工智能知识图谱锦标赛成功举办后&#xff0c;中软国际教育科技集团旗下SteerTech科技创新开源生态平台联手AI TIME&#xff0c;再一次迎来人工智能知识图谱应用在众多领域落地的探索旅程。一、组织机构【…

我在鹅厂,拿到满星绩效!

文 | 山竹小鹅背绩效&#xff1f;就算SP以上也背绩效&#xff1f;互联网寒冬&#xff1f;内卷太严重&#xff1f;卷不动&#xff1f;资本家吃相太难看&#xff1f;……听了太多消极言论&#xff0c;有些是陈述事实&#xff0c;也有很多是贩卖焦虑。吐槽能变得更好吗&#xff1f…

2019年学习总结

总结回顾自己学习的过程&#xff0c;看看自己的学习成果&#xff0c;激励自己在2020继续努力。 2019.3 - 2019.9 学习了王争的《数据结构和算法之美》&#xff0c;github 代码地址 统计了 2018.2 至 2019.12 的cpp代码量&#xff1a;41,721‬行 find . -name "*.cpp&qu…

Spring Cloud构建微服务架构:消息驱动的微服务(消费分区)【Dalston版】

通过上一篇《消息驱动的微服务&#xff08;消费组&#xff09;》的学习&#xff0c;我们已经能够在多实例环境下&#xff0c;保证同一消息只被一个消费者实例进行接收和处理。但是&#xff0c;对于一些特殊场景&#xff0c;除了要保证单一实例消费之外&#xff0c;还希望那些具…

图谱实战 | 知识图谱在供应链和运营绩效提升领域的应用

转载公众号 | DataFunSummit分享嘉宾&#xff1a;高欢 &#xff08;前&#xff09;博世中国编辑整理&#xff1a;卢鹏澳 桂林电子科技大学出品平台&#xff1a;DataFunTalk导读&#xff1a;公司内部尝试运用AI技术落地了几款基于知识图谱的产品&#xff0c;本文将从实践和应用角…

薪资不逊NLP算法岗,边缘AI火了!

众所周知&#xff0c;深度神经网络模型被广泛应用在图像分类、物体检测&#xff0c;目标跟踪等计算机视觉任务中&#xff0c;并取得了巨大成功。随着不同场景的需求变得更加多样&#xff0c;越来越多的IoT设备和场景需要与数据采集点以最接近的低时延来进行决策和操作&#xff…

LeetCode 735. 行星碰撞(栈)

1. 题目 给定一个整数数组 asteroids&#xff0c;表示在同一行的行星。 对于数组中的每一个元素&#xff0c;其绝对值表示行星的大小&#xff0c;正负表示行星的移动方向&#xff08;正表示向右移动&#xff0c;负表示向左移动&#xff09;。每一颗行星以相同的速度移动。 找…

Spring Cloud构建微服务架构:消息驱动的微服务(消费组)【Dalston版】

通过之前的《消息驱动的微服务&#xff08;入门&#xff09;》一文&#xff0c;相信很多朋友已经对Spring Cloud Stream有了一个初步的认识。但是&#xff0c;对于《消息驱动的微服务&#xff08;核心概念&#xff09;》一文中提到的一些核心概念可能还有些迷糊&#xff0c;下面…

论文浅尝 | C3KG:中文常识对话知识图谱

笔记整理&#xff1a;张廉臣&#xff0c;东南大学硕士&#xff0c;研究方向为自然语言处理。Citation: Li, D., Li, Y., Zhang, J., Li, K., Wei, C., Cui, J., & Wang, B. (2022). C3KG: A Chinese Commonsense Conversation Knowledge Graph. arXiv preprint arXiv:2204.…

Spring Cloud构建微服务架构:消息驱动的微服务(核心概念)【Dalston版】

通过《Spring Cloud构建微服务架构&#xff1a;消息驱动的微服务&#xff08;入门&#xff09;》一文&#xff0c;相信大家对Spring Cloud Stream的工作模式已经有了一些基础概念&#xff0c;比如&#xff1a;输入、输出通道的绑定&#xff0c;通道消息事件的监听等。下面在本文…

大模型时代,我们真的不再需要分词了吗?

文 | 付奶茶编 | 小轶分词是NLP的基础任务&#xff0c;将句子、段落分解为字词单位&#xff0c;方便后续的处理的分析。不知道NLPer有没有思考过这个问题:我们在各项研究工作中想要建模的文本单位究竟是什么?What are the units of text that we want to model?在这篇论文中,…

LeetCode 1190. 反转每对括号间的子串(栈)

1. 题目 给出一个字符串 s&#xff08;仅含有小写英文字母和括号&#xff09;。 请你按照从括号内到外的顺序&#xff0c;逐层反转每对匹配括号中的字符串&#xff0c;并返回最终的结果。 注意&#xff0c;您的结果中 不应 包含任何括号。 示例 1&#xff1a; 输入&#xf…

论文浅尝 | 探索用于归纳型知识图谱补全的关系语义

笔记整理&#xff1a;徐雅静&#xff0c;浙江大学在读硕士&#xff0c;研究方向为知识图谱的表示学习&#xff0c;零样本学习。KGC指的是在不完整的KG中推理出缺失的实体。以前的多数工作仅仅考虑到直推式场景&#xff08;实体都存在KG中&#xff09;&#xff0c;不能有效地解决…

关于深度学习,我们写了一本1400页的全栈手册

不知不觉写文章已经四年了。最开始是一个人&#xff0c;后来恰了恰饭&#xff0c;就招揽了很多比小夕厉害的小伙伴一起写。不知不觉已经积累了300多篇了。。三年以来&#xff0c;我跟小伙伴们原创的300篇深度学习与NLP领域的入门资料、子方向综述、2018~2022学术前沿解读、工业…