摘要:前言的的題目公平的糖果交換,原題目描述如下愛(ài)麗絲和鮑勃有不同大小的糖果棒是愛(ài)麗絲擁有的第塊糖的大小,是鮑勃擁有的第塊糖的大小。返回一個(gè)整數(shù)數(shù)組,其中是愛(ài)麗絲必須交換的糖果棒的大小,是必須交換的糖果棒的大小。
前言
LeetCode的Weekly Contest 98的題目公平的糖果交換,原題目描述如下:
愛(ài)麗絲和鮑勃有不同大小的糖果棒:A[i] 是愛(ài)麗絲擁有的第 i 塊糖的大小,B[j] 是鮑勃擁有的第 j 塊糖的大小。解題思路因?yàn)樗麄兪桥笥眩运麄兿虢粨Q一個(gè)糖果棒,這樣交換后,他們都有相同的糖果總量。(一個(gè)人擁有的糖果總量是他們擁有的糖果棒大小的總和。)
返回一個(gè)整數(shù)數(shù)組 ans,其中 ans[0] 是愛(ài)麗絲必須交換的糖果棒的大小,ans[1] 是 Bob 必須交換的糖果棒的大小。
如果有多個(gè)答案,你可以返回其中任何一個(gè)。保證答案存在。
示例 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]
根據(jù)題目的描述可以知道實(shí)際上愛(ài)麗絲和鮑勃只是交換了雙方的一個(gè)糖果就能夠讓雙方的糖果棒大小一致。所以其實(shí)這道題目十分簡(jiǎn)單,只要窮舉各自互換糖果后的大小是否一致就可以找出雙方互換的糖果了。
實(shí)現(xiàn)代碼/** * 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]; //計(jì)算交換糖果后糖果的總大小 int tmpA = sumA - a + b; int tmpB = sumB - b + a; if (tmpA == tmpB) {//判斷交換后是否一致 result[0] = a; result[1] = b; break; } } } return result; }
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://www.ezyhdfw.cn/yun/76798.html
前端LeetCode刷題 下面是已刷的題目的目錄。GitHub:https://github.com/cunzaizhuy...每日打卡更新中,歡迎關(guān)注。 數(shù)組類(lèi) 26 刪除排序數(shù)組中的重復(fù)項(xiàng) 27 移除元素 35 搜索插入位置 66 加1 80 medium 刪除排序數(shù)組中的重復(fù)項(xiàng)2 88 合并兩個(gè)有序數(shù)組 167 兩數(shù)之和II - 輸入有序數(shù)組 118 楊輝三角 169 easy 求眾數(shù) 1...
摘要:重構(gòu)舊代碼,取而代之方式是將動(dòng)作委托給狀態(tài)類(lèi)。注這個(gè)模式是將狀態(tài)封裝成為獨(dú)立地類(lèi),并將動(dòng)作委托給代表當(dāng)前狀態(tài)的對(duì)象。 通過(guò)改變對(duì)象內(nèi)部狀態(tài)幫助對(duì)象控制行為 以一個(gè)簡(jiǎn)單例子說(shuō)明,假設(shè)我們要模擬制造一臺(tái)糖果機(jī)器,對(duì)方給你的機(jī)器流程圖如下 showImg(https://segmentfault.com/img/bVXuWe?w=512&h=466); ok,我們現(xiàn)在簡(jiǎn)單分析這張狀態(tài)圖,可...
摘要:重復(fù)上述過(guò)程每次都比上一次多給出一顆糖果,當(dāng)?shù)竭_(dá)隊(duì)伍終點(diǎn)后再次從隊(duì)伍起點(diǎn)開(kāi)始,直到我們分完所有的糖果。返回一個(gè)長(zhǎng)度為元素之和為的數(shù)組,以表示糖果的最終分發(fā)情況即表示第個(gè)小朋友分到的糖果數(shù)。 前言 Weekly Contest 143的 分糖果 II 排排坐,分糖果。 我們買(mǎi)了一些糖果 candies,打算把它們分給排好隊(duì)的 n = num_people 個(gè)小朋友。 給第一個(gè)小朋友 1...
摘要:今日題目老師想給孩子們分發(fā)糖果,有個(gè)孩子站成了一條直線,老師會(huì)根據(jù)每個(gè)孩子的表現(xiàn),預(yù)先給他們?cè)u(píng)分。相鄰的孩子中,評(píng)分高的孩子必須獲得更多的糖果。示例輸入輸出解釋你可以分別給這三個(gè)孩子分發(fā)顆糖果。第三個(gè)孩子只得到顆糖果,這已滿足上述兩個(gè)條件。 今日題目 老師想給孩子們分發(fā)糖果,有N個(gè)孩子站成了一條直線,老師會(huì)根據(jù)每個(gè)孩子的表現(xiàn),預(yù)先給他們?cè)u(píng)分。你需要按照以下要求,幫助老師給這些孩子分發(fā)糖...
摘要:對(duì)象改變條件對(duì)象當(dāng)前線程要等待線程終止之后才能從返回。如果線程在上的操作中被中斷,通道會(huì)被關(guān)閉,線程的中斷狀態(tài)會(huì)被設(shè)置,并得到一個(gè)。清除線程的中斷狀態(tài)。非公平性鎖雖然可能造成饑餓,但極少的線程切換,保證其更大的吞吐量。 聲明:Java并發(fā)的內(nèi)容是自己閱讀《Java并發(fā)編程實(shí)戰(zhàn)》和《Java并發(fā)編程的藝術(shù)》整理來(lái)的。 showImg(https://segmentfault.com/im...
閱讀 3067·2021-10-12 10:17
閱讀 1669·2021-09-01 11:38
閱讀 1177·2019-08-30 15:44
閱讀 3550·2019-08-26 18:36
閱讀 571·2019-08-26 13:25
閱讀 1955·2019-08-26 10:29
閱讀 2903·2019-08-23 15:58
閱讀 819·2019-08-23 12:59