LeetCode日記(最接近目標價格的甜點成本)第14天-創(chuàng)新互聯

題目來自LeetCode編號1774

站在用戶的角度思考問題,與客戶深入溝通,找到安化網站設計與安化網站推廣的解決方案,憑借多年的經驗,讓設計與互聯網技術結合,創(chuàng)造個性化、用戶體驗好的作品,建站類型包括:網站設計制作、成都網站制作、企業(yè)官網、英文網站、手機端網站、網站推廣、主機域名、網頁空間、企業(yè)郵箱。業(yè)務覆蓋安化地區(qū)。

題目如下:

你打算做甜點,現在需要購買配料。目前共有?n種冰激凌基料和?m種配料可供選購。而制作甜點需要遵循以下幾條規(guī)則:

  • 必須選擇?一種?冰激凌基料。
  • 可以添加?一種或多種?配料,也可以不添加任何配料。
  • 每種類型的配料?最多兩份?。

給你以下三個輸入:

  • baseCosts,一個長度為?n的整數數組,其中每個?baseCosts[i]表示第?i種冰激凌基料的價格。
  • toppingCosts,一個長度為?m的整數數組,其中每個?toppingCosts[i]表示?一份?第?i種冰激凌配料的價格。
  • target,一個整數,表示你制作甜點的目標價格。

你希望自己做的甜點總成本盡可能接近目標價格?target。

返回最接近target的甜點成本。如果有多種方案,返回?成本相對較低?的一種。

示例 1:

輸入:baseCosts = [1,7], toppingCosts = [3,4], target = 10
輸出:10
解釋:考慮下面的方案組合(所有下標均從 0 開始):
- 選擇 1 號基料:成本 7
- 選擇 1 份 0 號配料:成本 1 x 3 = 3
- 選擇 0 份 1 號配料:成本 0 x 4 = 0
總成本:7 + 3 + 0 = 10 。

示例 2:

輸入:baseCosts = [2,3], toppingCosts = [4,5,100], target = 18
輸出:17
解釋:考慮下面的方案組合(所有下標均從 0 開始):
- 選擇 1 號基料:成本 3
- 選擇 1 份 0 號配料:成本 1 x 4 = 4
- 選擇 2 份 1 號配料:成本 2 x 5 = 10
- 選擇 0 份 2 號配料:成本 0 x 100 = 0
總成本:3 + 4 + 10 + 0 = 17 。不存在總成本為 18 的甜點制作方案。

示例 3:

輸入:baseCosts = [3,10], toppingCosts = [2,5], target = 9
輸出:8
解釋:可以制作總成本為 8 和 10 的甜點。返回 8 ,因為這是成本更低的方案。

示例 4:

輸入:baseCosts = [10], toppingCosts = [1], target = 1
輸出:10
解釋:注意,你可以選擇不添加任何配料,但你必須選擇一種基料。

思路:

從題目可知我們必須選一種基料,每種配料有三種狀態(tài),分別是0,1,2。

我們可以采用枚舉法用一個變量記錄目前為止最符合要求的成本方案。

代碼如下:

class Solution {
    int ans=Integer.MAX_VALUE;//這個變量用于儲存目前為止最符合要求的成本。
//將其賦值為這個的原因是想讓第一次比較不管怎么樣都能賦值給ans
    public int closestCost(int[] base, int[] top, int target) {
        for(int a:base)//枚舉不同基料的情況
        {
            dfs(0,a,target,top);
        }
        return ans;
    }
    public void dfs(int x,int sum,int target,int []top)
    {
        int a=Math.abs(target-sum);//計算當前選擇方案與目標值的差值
        int b=Math.abs(target-ans);//計算目前最優(yōu)方案與目標的差值
        if(a

你是否還在尋找穩(wěn)定的海外服務器提供商?創(chuàng)新互聯www.cdcxhl.cn海外機房具備T級流量清洗系統(tǒng)配攻擊溯源,準確流量調度確保服務器高可用性,企業(yè)級服務器適合批量采購,新人活動首月15元起,快前往官網查看詳情吧

當前名稱:LeetCode日記(最接近目標價格的甜點成本)第14天-創(chuàng)新互聯
文章源于:http://muchs.cn/article0/dpjgio.html

成都網站建設公司_創(chuàng)新互聯,為您提供動態(tài)網站、關鍵詞優(yōu)化、響應式網站、網站建設、企業(yè)網站制作、網站策劃

廣告

聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯