LintCode 1917 切割剩餘金屬

2021-10-18 07:35:09 字數 817 閱讀 3373

描述

金屬棒工廠的廠長擁有 n 根多餘的金屬棒。

當地的乙個承包商提出,只要所有的棒材具有相同的長度(用 salelength 表示棒材的長度),就將金屬棒工廠的剩餘棒材全部購買。

廠長可以通過將每根棒材切割零次或多次來增加可銷售的棒材數量,但是每次切割都會產生一定的成本(用 costpercut 表示每次切割的成本)。

等所有的切割完成以後,多餘的棒材將被丟棄,沒有利潤。

金屬棒工廠的廠長獲得的銷售總利潤計算公式如下:

totalprofit = totaluniformrods * salelength * saleprice - totalcuts * costpercut
其中 totaluniformrods 是可銷售的金屬棒數量,

saleprice 是承包商同意支付的每單位長度**,

totalcuts是需要切割棒材的次數。

樣例 1

輸入:110[

30,59,

110]

輸出:1913

class

solution

maxprofit =

max(maxprofit, profit);}

return maxprofit;}}

;

101ms c++

我的csdn部落格位址

LintCode 191 乘積最大子序

找出乙個序列中乘積最大的連續子串行 至少包含乙個數 樣例 比如,序列 2,3,2,4 中乘積最大的子串行為 2,3 其乘積為6。思路 動態規劃,每一步只需要記住其前一步的整數最大值和負數的最小值。因為涉及到正負,所以要儲存最小值和最大值兩種情況,因為負負得正。最小值的比較包括nums i min n...

191 煎餅排序

題目描述 給定陣列 a,我們可以對其進行煎餅翻 我們選擇一些正整數 k a.length,然後反轉 a 的前 k 個元素的順序。我們要執行零次或多次煎餅翻轉 按順序一次接一次地進行 以完成對陣列 a 的排序。返回能使 a 排序的煎餅翻轉操作所對應的 k 值序列。任何將陣列排序且翻轉次數在 10 a....

LeetCode191 統計詞頻

寫乙個 bash 指令碼以統計乙個文字檔案 words.txt 中每個單詞出現的頻率。為了簡單起見,你可以假設 words.txt只包括小寫字母和 每個單詞只由小寫字母組成。單詞間由乙個或多個空格字元分隔。示例 假設 words.txt 內容如下 dayis sunny the thethe sun...