查詢的應用 計算最優解

2021-10-20 18:28:26 字數 1083 閱讀 2896

題目:

傳送帶一次傳來了重量分別為wi(i=0,1,…,n-1)的n個貨物。現在要將這些貨物裝到k輛卡車上。每輛卡車可裝載的貨物數大於等於0,但貨物重量總和不得超過卡車的最大運載量p.所有的卡車的最大運載量p一致.

輸入:第一行輸入整數 n和整數k,用空格隔開.接下來n行輸入n個整數wi,每個數占1行.

輸出:輸出p的最小值,佔1行.

限制1<=n<=100000;1<=k<=100000;1<=wi<=10000

輸入示例

5 3817

39

輸出示例

10

注:第1輛卡車裝2個貨物,第二輛卡車裝2個貨物,第3輛卡車裝1個貨,因此最大運載量的最小值為10

利用二分查詢

#include

#define max 100000

typedef

long

long llong;

int n,k;

llong t[max]

;int

chek

(llong p)

;int

solve()

;//k輛最大運載量p的卡車最多能裝多少貨物

intchek

(llong p)

}return i;

}//二分查詢

intsolve()

return right;

}int

main()

llong m;

m=solve()

;printf

("%ld"

,m);

return0;

}

PCIE 頻寬 速率應用計算

pci express 1.1 使用兩對低電壓的差位訊號排線 low voltage differential signaling pairs 分別各跑 2.5gbit s 速度,x1 有兩對 傳送與接收 2.5 g x 2 5gbps 的頻寬.不過在討論頻寬時還是以單方向來計算.下面的速度是以單對...

棧的應用 計算表示式

挺久之前寫的乙個作業,acm選修課的,用棧實現的計算表示式,有兩種,一種是將表示式轉換為字尾表示式再計算,一種是直接計算中綴表示式,下面是 1 轉字尾再計算 include includeusing namespace std int main s2.push s i break case case...

最優解問題的求解

1.一般來說題目中需要求解出最優解的問題,我們是可以使用普通遞迴,遞推,深度優先搜尋,記憶型的遞迴,貪心或者動態規劃來進行求解的 其中使用普通的遞迴或者深搜,遞推這些資料量較小的情況下求解速度還行,假如資料量相對大一點的情況下,而且節點的數量比較多,這個時候使用這些方法來解決往往會耗時比較大,有時候...