2300.咒语和药水的成功对数

2023-11-10 09:05
文章标签 成功 对数 2300 咒语 药水

本文主要是介绍2300.咒语和药水的成功对数,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

​​题目来源:

        leetcode题目,网址:2300. 咒语和药水的成功对数 - 力扣(LeetCode)

解题思路:

       将 potions 数组排序后二分查找能够满足要求的最小值即可。

解题代码:

class Solution {
public:vector<int> successfulPairs(vector<int>& spells, vector<int>& potions, long long success) {vector<int> res;sort(potions.begin(),potions.end());for(int i=0;i<spells.size();i++){long minPotion=success/spells[i]+(success%spells[i]==0?0:1);res.push_back(getNum(potions,minPotion));}return res;}int getNum(vector<int>& potions,long minPotion){int start=0;int end=potions.size()-1;if(potions[start]>=minPotion){return end-start+1;}start++;while(start<=end){int mid=start+(end-start)/2;if(potions[mid]>=minPotion && potions[mid-1]<minPotion){return potions.size()-mid;}else if(potions[mid]>=minPotion){end=mid-1;}else{start=mid+1;}}return 0;}
};

总结:

        注意边界条件。

        官方题解给出了两种 解法。第一种是二分。第二种双指针,是将两个数组都排序后使用双指针查找,然后再按原来的顺序输出。

        C++ upper_bound(begin,end,num) 从数组的begin 位置到 end-1 位置二分查找第一个大于num 的数字。

        C++ lower_bound(begin,end,num) 从数组的begin 位置到 end-1 位置二分查找第一个小于等于 num 的数字。


这篇关于2300.咒语和药水的成功对数的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/381709

相关文章

六西格玛培训公司:解锁成功之门,让企业与个人共赴“嗨”途

在竞争激烈的21世纪,六西格玛培训公司手握一把神奇的钥匙,帮助企业及个人轻松开启成功的大门。 对企业来说: 产品质量飞跃:不再是偶尔的精品,而是每个产品都如同精雕细琢的艺术品,吸引无数顾客争相购买。 工作流程优化:六西格玛培训如同精准的剪刀,剪去冗余,让工作流程更加顺畅高效。 客户满意度飙升:深谙客户需求的六西格玛,帮助企业精准把握市场脉搏,让每位客户都感受到宾至如归的满意。 战略转型游刃有

IPD推行成功的核心要素(十一)技术规划与平台规划促进公司战略成功

随着外部大环境的影响,各企业仅有良好的愿望是不够的。预测并顺应新兴市场和技术的变化,变危机为转机,不断推出强大的产品才是一个公司持续繁荣的根本保障。而高效的产品开发往往是基于某些关键技术,针对市场推出的一个或几个产品系列,这些产品系列通常共用一些产品平台,共用一种或者几种关键技术。当一家企业进入了平稳发展期,已经建立了较为完善的管理制度和产品开发流程,但是依然认为竞争对手是那样强大,那样不可战胜。

XP单机版安装金蝶K3的13.1版本,金蝶K3Wise安装步骤,成功安装

在我们安装金蝶K3时往往会出现各种报错,主要是因为我们的Windows Xp操作系统是Ghost版本,或者是windows XP HOME或者是精简版,因此某些组件在系统里没有,导致我们安装金蝶K3时经常出错报错。本文章就是主要结合实际安装过程,总结了一些问题的解决办法。如果您按照本流程进行安装会比较流畅。 下载一个版本的Windows XP镜像,重装电脑。

《三国:谋定天下》成为了SLG游戏现象级的成功案例

原标题:《三国:谋定天下》引领SLG游戏新潮流,B站股价五个飙升了30%   易采游戏网6月23日:B站作为年轻人喜爱的文化社区和视频平台,再次用一款新的游戏证明了其在游戏发行领域的独到眼光与强大实力。最近大火的策略角色扮演游戏《三国:谋定天下》成为了现象级的成功案例,不仅游戏本身质量受到认可,而且在竞争激烈的iOS畅销榜上勇夺第三的位置,仅排在了资深巨头DNF手游和《王者荣耀》之后。更加引人注

linux设备上的Onvif 实现4:成功编译gsoap 2.8.15

前言     本说明示例是gsoap 2.8.15     gsoap工具包中支持的平台是:linux386、macosx、win32,没有提供嵌入式arm平台,本文将指导完成交叉工具编译生成嵌入式平台工具。 工作目录:\\192.168.0.234\work\gaoht\gsoap   \gsoap-2.8\   解压后的目录   \target\      编译后的安装目录 交叉编译工具:T

[HBM] HBM 国产进程, 国产HBM首次研发成功 (202406)

依公知及经验整理,原创保护,禁止转载。 专栏 《深入理解DDR》 AI 的火热浪潮带火了高带宽内存的需求,HBM已是存储市场耀眼的明星。目前市场上还没有国产HBM, 什么时候可以看到国产希望呢? 或许现在可以看到曙光了。 1. 设计端 1 生 2, 2 生 3, 3 生万物,万物怎么出现的, 当然是先有设计了。 1.1. 长鑫存储 HBM 样品 DRAM 原厂长鑫存储与芯片封装测试

怎么判断文件 fileoutPutStream已经拷贝成功? 项目需求是判断fileInputStream已经拷贝

要判断文件 `fileoutPutStream` 已经拷贝成功,可以通过以下几个步骤来实现: 1. **确保所有数据都已写入**:    使用 `FileOutputStream` 的 `getFD().sync()` 方法,这会强制将所有未写的数据写入到磁盘上。 2. **检查流是否关闭成功**:    在关闭流之后检查是否有异常抛出。如果流关闭时没有抛出异常,这通常意味着数据已经被成功写入

如何搭建一个成功的短剧制作平台

要搭建一个成功的短剧制作平台,需要考虑多个方面,包括目标定位、技术选择、内容管理、用户体验等。 1、明确目标和定位: 确定你的目标受众是谁,他们的年龄、兴趣、消费习惯等。 明确短剧制作平台的主要定位,是提供原创短剧内容,还是为用户提供创作与分享平台。 2、市场调研和竞品分析: 分析市场上已有的短剧制作平台,了解它们的优点和不足。 找出市场空白和用户需求,为你的短剧制作平台提供独特的服务或内

opencv实现对数log灰度变换

我的思路太窄了,想了一个遍历的方法。也可以先做通道分解,分析单个通道的log变换。 菜鸟一个,若是有好的想法,还请赐教。 Mat log_image;log_image.create(512,512,CV_8UC1);cvtColor(input_image, input_image, CV_BGR2GRAY);for (int i = 0; i <512; i++){for (

springboot项目用idea maven打包成功,在文件夹用命令行打包不成功

一个springboot工程,在idea里用maven里生命周期里package打包 ,可以打包成功,但是用mvn命令行在文件夹里就打包不成功, 报如下错误: -source 1.7 中不支持 lambda 表达式,请使用 -source 8 或更高版本以启用 lambda 表达式 后来经查,根据这篇博客 https://blog.csdn.net/weixin_43994410/articl