购买两块巧克力-第105场力扣夜喵双周赛-java双百方案

news/2024/10/28 18:28:39/

一、题目描述

给你一个整数数组 prices ,它表示一个商店里若干巧克力的价格。同时给你一个整数 money ,表示你一开始拥有的钱数。

你必须购买 恰好 两块巧克力,而且剩余的钱数必须是 非负数 。同时你想最小化购买两块巧克力的总花费。

请你返回在购买两块巧克力后,最多能剩下多少钱。如果购买任意两块巧克力都超过了你拥有的钱,请你返回 money 。注意剩余钱数必须是非负数。

示例 1:

输入:prices = [1,2,2], money = 3
输出:0
解释:分别购买价格为 1 和 2 的巧克力。你剩下 3 - 3 = 0 块钱。所以我们返回 0 。
示例 2:

输入:prices = [3,2,3], money = 3
输出:3
解释:购买任意 2 块巧克力都会超过你拥有的钱数,所以我们返回 3 。

来源:力扣(LeetCode)
链接:https://leetcode.cn/problems/buy-two-chocolates
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

二、运行结果

三、解题思路

思路比较直接,就是通过遍历一般价格数组,找出数组中最低的价格和第二低的价格,如果要使得购买后剩余的钱最多,则应该购买这两块巧克力,返回之前先比较一下这两块巧克力的价格是否比money多即可。

四、AC代码

class Solution {public int buyChoco(int[] prices, int money) {int len = prices.length;if(len < 2) return money;int min = Math.min(prices[0], prices[1]);   //保存价格最低的值int secMin = Math.max(prices[0], prices[1]);//保存价格第二低的值for(int i=2; i<len; i++){if(prices[i] <= min){secMin = min;min = prices[i];}else if(prices[i] <= secMin){secMin = prices[i];}}if(min + secMin > money){return money;}else{return (money - min - secMin);}}
}


http://www.ppmy.cn/news/97776.html

相关文章

风辞远的科技茶屋:可怖的AI

大家好&#xff0c;我是脑极体的风辞远。一直以来我们都在写大块文章&#xff0c;很少有机会跟大家聊天。时间长了&#xff0c;总觉得这种方式有一点冷漠感&#xff0c;不够轻松&#xff0c;加上往往每篇文章只聚焦一个话题&#xff0c;而我们产能有限&#xff0c;就会有很多值…

如何构建一个安全的系统

对于一个系统&#xff0c;特别是开放给互联网用户使用的系统来讲&#xff0c;系统的安全性是重要问题。一个系统&#xff0c;如果系统架构差一点儿&#xff0c;最多开发效率低&#xff1b;代码写得差一点儿&#xff0c;最多系统运行速度慢&#xff0c;但是如果系统安全有问题&a…

word解决文字与公式mathtype不对齐

修改字体和段落里面的这两个。

数据结构与算法面试题

&#xff08;1&#xff09; 红黑树的了解&#xff08;平衡树&#xff0c;二叉搜索树&#xff09;&#xff0c;使用 场景 把数据结构上几种树集中的讨论一下&#xff1a; 1.AVLtree 定义&#xff1a;最先发明的自平衡二叉查找树。在AVL树中任何节点的两个子树的高度最大差别为一…

使用curl命令传输数据

文章目录 一、curl命令二、举例和注意事项Reference 一、curl命令 curl是传输数据的命令行工具&#xff0c;可以通过命令行发送HTTP请求和接收HTTP响应。它的名字是“client for URLs”&#xff0c;意为URL的客户端&#xff0c;表示该工具主要用于处理URL相关的任务。curl可以…

Linux文件权限解析:从入门到实践

Linux文件权限是Linux系统中非常重要的一部分&#xff0c;它控制着文件和目录的许可&#xff08;读、写、执行&#xff09;和所有权&#xff08;用户、组&#xff09;&#xff0c;用戶在使用Linux系统的过程中&#xff0c;必须了解文件权限的概念&#xff0c;掌握如何修改文件权…

leetcode506.相对名次

题目描述跳转leetcode详情 给你一个长度为 n 的整数数组 score &#xff0c;其中 score[i] 是第 i 位运动员在比赛中的得分。所有得分都 互不相同 。 运动员将根据得分 决定名次 &#xff0c;其中名次第 1 的运动员得分最高&#xff0c;名次第 2 的运动员得分第 2 高&#xff0…

mybatis-plus实现逻辑删除(详细!)

文章目录 什么是逻辑删除&#xff1f;为什么用到逻辑删除&#xff1f;在springboot使用Mybatis-Plus提供的逻辑删除1、在application.yml配置2、 实体类字段上加上TableLogic注解演示 什么是逻辑删除&#xff1f; 逻辑删除的本质是修改操作&#xff0c;并不是真正的删除&#…