**
題目描述
輸入輸出
樣例輸入
樣例輸出
想法程式注意
**
題目描述
john最近買了乙個書架用來存放奶牛養殖書籍,但書架很快被存滿了,只剩最頂層有空餘。
john共有n頭奶牛(1≤n≤20,000),每頭奶牛有自己的高度hi(1≤hi≤10,000),n頭奶牛的總高度為s。書架高度為b(1≤b≤s<2,000,000,007)。
為了到達書架頂層,奶牛可以踩著其他奶牛的背,像疊羅漢一樣,直到他們的總高度不低於書架高度。當然若奶牛越多則危險性越大。為了幫助john到達書架頂層,找出使用奶牛數目最少的解決方案吧。
輸入
第1行:空格隔開的整數n和b。
第2~n+1行:第i+1行為整數hi。
輸出
能達到書架高度所使用奶牛的最少數目。
樣例輸入
6 40618樣例輸出 想法1113
1911
用越高的牛,花費的數量越少。
可以用排序來挑出較高的牛。
程式
#include
#include
using
namespace std;
int n;
long
long sum,ans;
int a[
20001];
long
long b[
20001];
intlalala
(int c,
int d)
intmain()
}}
注意
奶牛數 n(1≤n≤2』0000)
每頭牛高 m(1≤m≤1』0000)
計算高度的數(最大)=2』0000*1』0000=2』0000』0000
得開long long
書架高度為b
奶牛總高度為s
(1≤b≤s≤2,000,000,006)
也得開long long
題解 ZJOI2006 書架
link 小 t 有乙個很大的書櫃。這個書櫃的構造有些獨特,即書櫃裡的書是從上至下堆放成一列。她用 1 到 n 的正整數給每本書都編了號。小 t 在看書的時候,每次取出一本書,看完後放回書櫃然後再拿下一本。由於這些書太有吸引力了,所以她看完後常常會忘記原來是放在書櫃的什麼位置。不過小 t 的記憶力是...
TJOI2011 書架 題解
給出乙個長度為 n 的序列 h 請將 h 分成若干段,滿足每段數字之和都不超過 m 最小化每段的最大值之和。眾所周知,不會做的題目就 dp 其實 dp 方程挺好想的,設 f i 為到第 i 個數,分為若干段所需要的最小代價 設 sum 為 h 的字首和。根據題意可以得到轉移 f i min limi...
P2596 ZJOI2006 書架 題解
最近學習了splay和非旋式treap,於是找到了這道題。維護乙個序列,支援移動元素,查詢元素在序列中的位置,查詢序列中某乙個位置的元素。無旋式treap可以維護一棵樹的中序遍歷結果,但是不支援通過編號來找節點。於是在無旋式treap的基礎上,維護每個節點的父親,這樣就可以求出元素在序列中的位置。對...