LintCode 1677. 石头(自定义优先队列)

1. 题目

给定数组 p 代表 n 个石头的位置和数组 d 代表这 n 块石头能够扔的距离。

从左(0位置)往右走。当你第 k 次碰到一个石头时,
如果 k 是奇数, 把这个石头往右扔;
如果 k 是偶数,跳过这个石头。

返回不再会碰到石头时,最右边的石头的位置。

样例 1:
输入: p = [1, 2], d = [5, 4]
输出: 11
解释: 一开始,位置1上的石头扔到位置6。然后跳过位置2的石头。接着位置6的时候被扔到位置11。最后跳过位置11的石头。样例 2:
输入: p = [1, 6], d = [5, 6] 
输出: 12
解释: 一开始,位置1上的石头扔到位置6。然后跳过位置6的石头(更大的石头)。接着位置6的时候被扔到位置12。最后跳过位置12的石头。注意事项
n <= 10^4
p[i] <= 10^5
d[i] <= 10^3
如果两个或多个石头停留在相同位置,
你先碰到的是最大的石头(**d[i] 最小**的石头)。
意味着首先扔或跳过较大的石头。

2. 解题

unordered_map<int,int> m;// 序号idx,石头能扔的dis距离
struct cmp
{bool operator()(const auto& a,const auto& b){if(a.second == b.second)//距离一样,小的先出队return m[a.first] > m[b.first];return a.second > b.second;//距离近的先出队}
};class Solution {
public:int getDistance(vector<int> &p, vector<int> &d) {if(p.size() == 0)return 0;bool flag = true;priority_queue<pair<int,int>,vector<pair<int,int>>,cmp> q;// pair :序号 idx, 石头位置for(int i = 0; i < p.size(); ++i){m[i] = d[i];// idx,能扔的disq.push(make_pair(i, p[i]));//初始位置}pair<int,int> tp;while(!q.empty()){tp = q.top();q.pop();if(flag){q.push(make_pair(tp.first, tp.second+m[tp.first]));}flag = !flag;//奇偶交替}return tp.second;}
};

100% 数据通过测试
总耗时 100 ms
您的提交打败了 46.88% 的提交!

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

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

相关文章

手机上也能训练BERT和ResNet了?!

源 | 机器之心研究者表示&#xff0c;他们将边缘训练看作一个优化问题&#xff0c;从而发现了在给定内存预算下实现最小能耗的最优调度。目前&#xff0c;智能手机和嵌入式平台等边缘设备上已经广泛部署深度学习模型来进行推理。其中&#xff0c;训练仍然主要是在具有 GPU 等高…

LintCode 125. 背包问题 II(DP)

1. 题目 有 n 个物品和一个大小为 m 的背包. 给定数组 A 表示每个物品的大小 数组 V 表示每个物品的价值. 问最多能装入背包的总价值是多大? 样例 1: 输入: m 10, A [2, 3, 5, 7], V [1, 5, 2, 4] 输出: 9 解释: 装入 A[1] 和 A[3] 可以得到最大价值, V[1] V[3] 9 样例…

大众点评App的短视频耗电量优化实战

前言 美团测试团队负责App的质量保证工作&#xff0c;日常除了App的功能测试以外&#xff0c;还会重点关注App的性能测试。现在大家对手机越来越依赖&#xff0c;而上面各App的耗电量&#xff0c;直接影响了手机的待机时间&#xff0c;是用户非常关心的一点。本文主要通过一个典…

解决CNN固有缺陷!通用 CNN 架构CCNN来了| ICML2022

文 | David W. Romero等源丨机器之心在 VGG、U-Net、TCN 网络中... CNN 虽然功能强大&#xff0c;但必须针对特定问题、数据类型、长度和分辨率进行定制&#xff0c;才能发挥其作用。我们不禁会问&#xff0c;可以设计出一个在所有这些网络中都运行良好的单一 CNN 吗&#xff1…

境外业务性能优化实践

本文根据第16期美团技术线上沙龙OnLine演讲内容整理而成。 前言 性能问题简介 应用性能是产品用户体验的基石&#xff0c;性能优化的终极目标是优化用户体验。当我们谈及性能&#xff0c;最直观能想到的一个词是“快”&#xff0c;Strangeloop在对众多的网站做性能分析之后得出…

LeetCode 第 21 场双周赛(779/1913,前40.7%)

文章目录1. 比赛结果2. 题目LeetCode 5336. 上升下降字符串 easyLeetCode 5337. 每个元音包含偶数次的最长子字符串 mediumLeetCode 5338. 二叉树中的最长交错路径 mediumLeetCode 5339. 二叉搜索子树的最大键值和 hard1. 比赛结果 只做出来了第1题&#xff0c;第3题有一个例子…

算法工程师的三观测试

文 | 小戏编 | 小轶如果我在谷歌输入“How to improve my machine learning models”&#xff0c;我会得到形形色色花样繁多的提升模型性能的方法。从调参到特征工程&#xff0c;从集成模型到数据增强&#xff0c;琳琅满目&#xff0c;不胜枚举。可是如果我在这个问题上加一点限…

领域驱动设计在互联网业务开发中的实践

至少30年以前&#xff0c;一些软件设计人员就已经意识到领域建模和设计的重要性&#xff0c;并形成一种思潮&#xff0c;Eric Evans将其定义为领域驱动设计&#xff08;Domain-Driven Design&#xff0c;简称DDD&#xff09;。在互联网开发“小步快跑&#xff0c;迭代试错”的大…

LeetCode 1377. T 秒后青蛙的位置(BFS)

1. 题目 给你一棵由 n 个顶点组成的无向树&#xff0c;顶点编号从 1 到 n。青蛙从 顶点 1 开始起跳。规则如下&#xff1a; 在一秒内&#xff0c;青蛙从它所在的当前顶点跳到另一个 未访问 过的顶点&#xff08;如果它们直接相连&#xff09;。青蛙无法跳回已经访问过的顶点。…

已删除

7.12更新:部分基金赎回的钱已经到账小金库了&#xff0c;今日从小金库提现时又提示银行卡已删除&#xff0c;不过这次可以点击重新绑定&#xff0c;重新绑定时会报错“绑定的卡与原卡一致”&#xff0c;流程没法走完。但这时候再退回去却发现“银行卡已删除”的提示没有了。于是…

即时配送的ETA问题之亿级样本特征构造实践

ETA&#xff08;Estimated time of Arrival&#xff0c;预计送达时间&#xff09;是外卖配送场景中最重要的变量之一&#xff08;如图1&#xff09;。 我们对ETA预估的准确度和合理度会对上亿外卖用户的订单体验造成深远影响&#xff0c;这关系到用户的后续行为和留存&#xff…

LeetCode 1376. 通知所有员工所需的时间(DFS)

1. 题目 公司里有 n 名员工&#xff0c;每个员工的 ID 都是独一无二的&#xff0c;编号从 0 到 n - 1。公司的总负责人通过 headID 进行标识。 在 manager 数组中&#xff0c;每个员工都有一个直属负责人&#xff0c;其中 manager[i] 是第 i 名员工的直属负责人。对于总负责人…

华为天才少年稚晖君做了一把模块化机械键盘,引起极客圈地震,网友:这才是真正的客制化...

作者 | 王玥、李梅&#xff0c;陈彩娴&#xff08;编辑&#xff09;来源 | AI科技评论他来了他来了&#xff0c;一人顶一个团队的稚晖君又一次带着一项硬核&#xff08;虽然他强调是“软核”&#xff09;黑科技来了&#xff01;稚晖君&#xff0c;真名彭志辉&#xff0c;三次元…

iPhone X 刘海打理指北

iPhone X 刘海机于9月13日发布&#xff0c;给科技小春晚带来一波高潮。作为开发人员却多出来一份忧虑&#xff0c;iPhone X 怎么适配&#xff1f;我们 App 的脑袋会不会也长一刘海出来&#xff1f;Tabbar 会不会被圆角&#xff1f;先来看一下美团 App 的表现&#xff1a; 图 1.…

大厂们终于无法忍受“加一秒”了,微软谷歌Meta等公司提议废除闰秒

文 | 萧箫 发自 凹非寺源 | 量子位 , 公众号 QbitAI大厂们再也无法忍受闰秒带来的一堆bug了。现在&#xff0c;谷歌Meta微软亚马逊等一众科技巨头发起了一项倡议&#xff1a;废除闰秒&#xff01;闰秒这玩意&#xff0c;说白了就是通过给“世界标准时间”加_&#xff08;或减&a…

LeetCode 1374. 生成每种字符都是奇数个的字符串

1. 题目 给你一个整数 n&#xff0c;请你返回一个含 n 个字符的字符串&#xff0c;其中每种字符在该字符串中都恰好出现 奇数次 。 返回的字符串必须只含小写英文字母。如果存在多个满足题目要求的字符串&#xff0c;则返回其中任意一个即可。 示例 1&#xff1a; 输入&…

Redux从设计到源码

本文主要讲述三方面内容&#xff1a; Redux 背后的设计思想源码分析以及自定义中间件开发中的最佳实践在讲设计思想前&#xff0c;先简单讲下Redux是什么&#xff1f;我们为什么要用Redux&#xff1f; Redux是什么&#xff1f; Redux是JavaScript状态容器&#xff0c;能提供可预…

LeetCode 1375. 灯泡开关 III

1. 题目 房间中有 n 枚灯泡&#xff0c;编号从 1 到 n&#xff0c;自左向右排成一排。最初&#xff0c;所有的灯都是关着的。 在 k 时刻&#xff08; k 的取值范围是 0 到 n - 1&#xff09;&#xff0c;我们打开 light[k] 这个灯。 灯的颜色要想 变成蓝色 就必须同时满足下…

MIT指出公开预训练模型不能乱用

文 | 林锐众所周知&#xff0c;用 Imagenet 预训练模型做 backbone&#xff0c;再接个下游任务的头去微调&#xff0c;是个简单有效的迁移学习方法。基本上&#xff0c;炼丹师用这种方法就能成功获得一个优秀的模型&#xff08;水一个实验室的项目&#xff09;。但是近些年一些…

从0到1:构建强大且易用的规则引擎

引言 2016年07月恰逢美团点评的业务进入“下半场”&#xff0c;需要我们在各个环节优化体验、提升效率、降低成本。技术团队需要怎么做来适应这个变化&#xff1f;这个问题直接影响着之后的工作思路。 美团外卖的CRM业务步入成熟期&#xff0c;规则类需求几乎撑起了这个业务所有…