东台专业做网站的公司,深圳网站建设公司联系方式,百度做广告推广怎么样,红色系网站LeetCode每日一题
2706.购买两块巧克力
2706. 购买两块巧克力 - 力扣#xff08;LeetCode#xff09;
介绍
给你一个整数数组 prices #xff0c;它表示一个商店里若干巧克力的价格。同时给你一个整数 money #xff0c;表示你一开始拥有的钱数。
你必须购买 恰好 两块…LeetCode每日一题
2706.购买两块巧克力
2706. 购买两块巧克力 - 力扣LeetCode
介绍
给你一个整数数组 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 。提示
2 prices.length 501 prices[i] 1001 money 100
思路
简单题重拳出击.
先对prices数组进行升序排序将第0个和第1个加起来与money进行比较根据题意返回结果。
代码
C
class Solution {
public:int buyChoco(vectorint prices, int money) {sort(prices.begin(),prices.end());return (prices[0] prices[1] money ? money : money - prices[0] - prices[1]);}
};Java
class Solution {public int buyChoco(int[] prices, int money) {Arrays.sort(prices);return (prices[0] prices[1] money ? money : money - prices[0] - prices[1]);}
}