ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

力扣刷题:LCP 18. 早餐组合(js)

2020-12-11 12:03:06  阅读:228  来源: 互联网

标签:LCP DrinkSort 18 记录 小扣 js 数组 var StapSort


题目:

小扣在秋日市集选择了一家早餐摊位,一维整型数组 staple 中记录了每种主食的价格,一维整型数组 drinks 中记录了每种饮料的价格。小扣的计划选择一份主食和一款饮料,且花费不超过 x 元。请返回小扣共有多少种购买方案。

注意:答案需要以 1e9 + 7 (1000000007) 为底取模,如:计算初始结果为:1000000008,请返回 1

难度:简单

题解:

首先将两个数组排序,这样方便我们进行查找,然后遍历数组,一个从头开始,一个从最后开始。查找符合条件的元素。只要当前的 “j” 符合条件,那么处于当前“i”的情况下,“j”前面的也符合。

ps:大体就是这个思路吧,这个我也是很懵逼的情况下写出来的。

 //将数组排序
      var DrinkSort = drinks.sort((a, b) => {
        return a - b;
      });
      var StapSort = staple.sort((a, b) => {
        return a - b;
      });
      //定义变量分别记录数组的长度
      var StapL = StapSort.length;
      var DrinkL = DrinkSort.length;
      // 定义变量记录次数
      var Count = 0;
      var i = 0;
      var j = DrinkL - 1;
      var Mod = 1000000007;
      //两个数组一个从头开始查找,一个从尾开始
      while (i < StapL && j >= 0) {
        if (StapSort[i] + DrinkSort[j] <= x) {
          Count += j + 1;
          i += 1;
        } else {
          j -= 1;
        }
      }
      return Count % Mod;

 

标签:LCP,DrinkSort,18,记录,小扣,js,数组,var,StapSort
来源: https://www.cnblogs.com/beheTea/p/14119681.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有