欧美一区二区三区视频免费_亚洲国产欧美一区二区丝袜黑人_一区二区三区资源_欧美一区二区视频免费观看

二分查找你帶我走吧-天天日報

2517.禮盒的最大甜蜜度給你一個正整數數組price,其中price[i]表示第i

2517.?禮盒的最大甜蜜度

給你一個正整數數組?price,其中?price[i]表示第?i類糖果的價格,另給你一個正整數?k。

商店組合?k類?不同糖果打包成禮盒出售。禮盒的?甜蜜度是禮盒中任意兩種糖果?價格絕對差的最小值。


【資料圖】

返回禮盒的?最大?甜蜜度。

先來個錯誤示范:

我的思路第一步就錯了,我直接當成子序列問題,但其實沒必要。比如一個禮盒:

[5,3,2,4,9]

求禮盒的甜蜜度,不需要把所有的元素兩兩組合,只需要先排序,變成:

[2,3,4,5,9]

那么對于2這個元素,與3組合就是2的所有組合中的最小值,后面所有的組合值都更大,可以直接無視。

為什么可以這樣?因為所有元素都是正整數,換言之具有單調性。

這里反映出我的思考方式還是太容易鉆死胡同,也沒有用分治法,先思考怎么求禮盒的甜蜜度,再求最終問題的答案,而是直接一股腦莽了進去。

我最終得到的思路是這樣的:

我可以從price中減去元素,最終得到我要的那個包含最大甜蜜度的禮盒。

給price排序,從price里面減去甜蜜度最小的組合的其中一個元素,讓甜蜜度變大。我能保證每一次操作都是最優的,同時最終我要的那個禮盒一定可以通過這樣的減操作得到,所以我可以用這種方法得到答案。

實際上根本不行。因為這個減操作的順序會影響最終的結果,我不知道最終的禮盒是用什么順序執行減操作得到的,換言之局部最優解不一定是全局最優解,我得枚舉全部的順序。

分析完錯誤原因,來看正確答案:二分查找。

然后我在想:二分的本質就是一個值跟一組區間的關系吧,隨著這個值的增大或減小,區間的數量跟大小也會增加或減少。

一個題目,只要能找到這樣的關系,就可以用二分。

待續:

關鍵詞:
責任編輯:hn1007
主站蜘蛛池模板: 久久日韩精品| 日韩av一区二区三区在线观看| 午夜精品一区二区三区视频免费看| 最新国产精品久久| 国产精品国产三级国产专播精品人 | 国产精品国产亚洲精品看不卡15| 国产日韩一区欧美| 韩国一区二区av| 日韩少妇中文字幕| 日日摸天天爽天天爽视频| 久久久久久噜噜噜久久久精品| 岛国视频一区免费观看| 久久精品国产69国产精品亚洲| 亚洲伊人久久综合| 国产精品午夜av在线| 欧美日韩在线不卡一区| 一区二区三区视频| 国产欧美日韩专区发布| 国产一区二区在线播放| 亚洲欧美日韩精品在线| 精品国产综合| 欧美在线视频一区二区| www欧美日韩| 国产精品人人做人人爽| 色播亚洲婷婷| 真实国产乱子伦对白视频| 国产日韩欧美精品在线观看| 久久久福利视频| 日本精品视频在线播放| 97久久久免费福利网址| 欧美日本国产在线| 久久久久久美女| 激情六月丁香婷婷| 国产精品情侣自拍| 在线视频不卡一区二区| 日本不卡久久| 久久成人av网站| 国产精品久久久久久久久久久久午夜片 | 欧美久久在线观看| 久久精品国产免费观看| 国产尤物91|