摘要:前言的的题目公平的糖果交换,原题目描述如下爱丽丝和鲍勃有不同大小的糖果棒是爱丽丝拥有的第块糖的大小,是鲍勃拥有的第块糖的大小。返回一个整数数组,其中是爱丽丝必须交换的糖果棒的大小,是必须交换的糖果棒的大小。
前言
LeetCode的Weekly Contest 98的题目公平的糖果交换,原题目描述如下:
爱丽丝和鲍勃有不同大小的糖果棒:A[i] 是爱丽丝拥有的第 i 块糖的大小,B[j] 是鲍勃拥有的第 j 块糖的大小。解题思路因为他们是朋友,所以他们想交换一个糖果棒,这样交换后,他们都有相同的糖果总量。(一个人拥有的糖果总量是他们拥有的糖果棒大小的总和。)
返回一个整数数组 ans,其中 ans[0] 是爱丽丝必须交换的糖果棒的大小,ans[1] 是 Bob 必须交换的糖果棒的大小。
如果有多个答案,你可以返回其中任何一个。保证答案存在。
示例 1:
输入:A = [1,1], B = [2,2]
输出:[1,2]示例 2:
输入:A = [1,2], B = [2,3]
输出:[1,2]示例 3:
输入:A = [2], B = [1,3]
输出:[2,3]示例 4:
输入:A = [1,2,5], B = [2,4]
输出:[5,4]
根据题目的描述可以知道实际上爱丽丝和鲍勃只是交换了双方的一个糖果就能够让双方的糖果棒大小一致。所以其实这道题目十分简单,只要穷举各自互换糖果后的大小是否一致就可以找出双方互换的糖果了。
实现代码/** * 888. 公平的糖果交换 * @param A * @param B * @return */ public int[] fairCandySwap(int[] A, int[] B) { int[] result = new int[2]; //获取双方糖果的总大小 int sumA = sum(A); int sumB = sum(B); for (int i = 0; i < A.length; i++) { int a = A[i]; for (int j = 0; j < B.length; j++) { int b = B[j]; //计算交换糖果后糖果的总大小 int tmpA = sumA - a + b; int tmpB = sumB - b + a; if (tmpA == tmpB) {//判断交换后是否一致 result[0] = a; result[1] = b; break; } } } return result; }
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/76798.html
前端LeetCode刷题 下面是已刷的题目的目录。GitHub:https://github.com/cunzaizhuy...每日打卡更新中,欢迎关注。 数组类 26 删除排序数组中的重复项 27 移除元素 35 搜索插入位置 66 加1 80 medium 删除排序数组中的重复项2 88 合并两个有序数组 167 两数之和II - 输入有序数组 118 杨辉三角 169 easy 求众数 1...
摘要:重构旧代码,取而代之方式是将动作委托给状态类。注这个模式是将状态封装成为独立地类,并将动作委托给代表当前状态的对象。 通过改变对象内部状态帮助对象控制行为 以一个简单例子说明,假设我们要模拟制造一台糖果机器,对方给你的机器流程图如下 showImg(https://segmentfault.com/img/bVXuWe?w=512&h=466); ok,我们现在简单分析这张状态图,可...
摘要:重复上述过程每次都比上一次多给出一颗糖果,当到达队伍终点后再次从队伍起点开始,直到我们分完所有的糖果。返回一个长度为元素之和为的数组,以表示糖果的最终分发情况即表示第个小朋友分到的糖果数。 前言 Weekly Contest 143的 分糖果 II 排排坐,分糖果。 我们买了一些糖果 candies,打算把它们分给排好队的 n = num_people 个小朋友。 给第一个小朋友 1...
摘要:今日题目老师想给孩子们分发糖果,有个孩子站成了一条直线,老师会根据每个孩子的表现,预先给他们评分。相邻的孩子中,评分高的孩子必须获得更多的糖果。示例输入输出解释你可以分别给这三个孩子分发颗糖果。第三个孩子只得到颗糖果,这已满足上述两个条件。 今日题目 老师想给孩子们分发糖果,有N个孩子站成了一条直线,老师会根据每个孩子的表现,预先给他们评分。你需要按照以下要求,帮助老师给这些孩子分发糖...
阅读 2928·2021-10-12 10:17
阅读 1551·2021-09-01 11:38
阅读 1049·2019-08-30 15:44
阅读 3450·2019-08-26 18:36
阅读 480·2019-08-26 13:25
阅读 1859·2019-08-26 10:29
阅读 2800·2019-08-23 15:58
阅读 732·2019-08-23 12:59