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

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

一、题目描述

二、解题思路

整体思路

可以采用排序+二分查找的方法来解决这个问题。

具体思路

(1)首先,对potions数组(药水)从小到大排序;

(2)遍历spells数组(咒语),计算与spells[i]乘积大于等于success的最小的乘数target(向上取整);

(3)利用lower_bound函数,二分查找potions数组(药水)中大于等于target的第一个数字的迭代器,potions.end()-it即为可与spells[i]配对的药水的数量,更新pairs[i]即可;

(4)遍历完spells数组后,直接返回pairs数组,即为所求。

三、代码实现

class Solution {
public:vector<int> successfulPairs(vector<int>& spells, vector<int>& potions, long long success) {int n=spells.size();int m=potions.size();vector<int> pairs(n,0);sort(potions.begin(),potions.end());for(int i=0;i!=n;i++){long long spell=spells[i];//向上取整long long target=(success+spell-1)/spell;//找到第一个大于等于target的数的迭代器auto it=lower_bound(potions.begin(),potions.end(),target);//计算potions数组中合法的药水的数量pairs[i]=potions.end()-it;}return pairs;}
};

http://www.dtcms.com/a/457360.html

相关文章:

  • 湖南城乡建设部网站首页长沙网红店
  • 从 0 到 1 搭建实时数据看板:RabbitMQ+WebSocket 实战指南
  • Linux(含嵌入式设备如泰山派)VNC 完整配置指南:含开机自启动(适配 Ubuntu/Debian 系)
  • 网站营销活动泰安市高新区建设局网站
  • 玳瑁的嵌入式日记 --------API总结
  • [xboard] 26 kernel启动流程之initrd、initramfs、ramdisk核心异同
  • 鸿蒙实现滴滴出行项目之侧边抽屉栏以及权限以及搜索定位功能
  • 从OpenAI发布会看AI未来:中国就业市场的重构与突围
  • 乔拓云网站建设wps怎么做网站
  • TensorFlow2 Python深度学习 - TensorFlow2框架入门 - 立即执行模式(Eager Execution)
  • 监控系统2 - framebuffer
  • 大型网站响应式wordpress3.8.3
  • Django `models.Field` 所有常见配置参数的完整清单与说明表
  • 音乐播放器-单html文件
  • 18+网站推广平面设计师素材网站
  • 告别传统SEO!拥抱下一代流量密码:生成式引擎优化(GEO)实战指南
  • 不抽佣美团核销API接口,同时支持美团抖音核销,快速接入
  • 优化网站关键词的技巧建设银行忘记密码网站
  • 网站建设属于服务还是货物为什么asp.net做的网站上传后不显示照片
  • TT直流减速电机(STM32)
  • MQTT协议三个核心函数的详解
  • 马拉松网站建设方案汽车网站管理系统
  • 【企业架构】TOGAF架构标准规范-技术架构
  • 【Proteus仿真】甲单片机(AT89C51)控制乙单片机(AT89C51)
  • 南阳网站推广优化公司discuz和wordpress区别
  • XSLT `<value-of>` 标签详解
  • 做外贸网站注册什么邮箱懒人模板网站
  • 案例-使用Postman向百度首页发送带时间戳的GET请求
  • leetcode排序链表
  • 做经营性的网站备案条件汉字叔叔花了多少钱做网站