題面(from luogu)
超級書架
farmer john最近為奶牛們的圖書館添置了乙個巨大的書架,儘管它是如此的大,但它還是幾乎瞬間就被各種各樣的書塞滿了。現在,只有書架的頂上還留有一點空間。 所有n(1 <= n <= 20,000)頭奶牛都有乙個確定的身高h_i(1 <= h_i <= 10,000)。設所有奶牛身高的和為s。書架的高度為b,並且保證 1 <= b <= s < 2,000,000,007。 為了夠到比最高的那頭奶牛還要高的書架頂,奶牛們不得不象演雜技一般,一頭站在另一頭的背上,疊成一座「奶牛塔」。當然,這個塔的高度,就是塔中所有奶牛的身高之和。為了往書架頂上放東西,所有奶牛的身高和必須不小於書架的高度。顯然,塔中的奶牛數目越多,整座塔就越不穩定,於是奶牛們希望在能夠到書架頂的前提下,讓塔中奶牛的數目盡量少。 現在,奶牛們找到了你,希望你幫她們計算這個最小的數目。
輸入格式:
第1行: 2個用空格隔開的整數:n 和 b * 第2..n+1行: 第i+1行是1個整數:h_i
輸出格式:
第1行: 輸出1個整數,即最少要多少頭奶牛疊成塔,才能夠到書架頂部
樣例.in
6 40
6 18
11 13
19 11
樣例.out
3輸入說明:
一共有6頭奶牛,書架的高度為40,奶牛們的身高在6..19之間。
輸出說明:
一種只用3頭奶牛就達到高度40的方法:18+11+13。當然還有其他方法,在此不一一列出了。
題目分析
(水題,我用來湊luoguac數的,剛好100題)
可以用貪心的思想來思考,最少的個數,應該就是一直加大的(這樣更少)
這樣我們就可以很簡單的寫這一道題目了
**
#include
using
namespace
std;
int a[20009],h,n,ans;
long total;
int main()
cout
return
0; //完美的結束程式
}
**蒟蒻新星c_uizrp_dzjopkl原創**
最優合併問題 貪心思想
最優合併問題 description 給定k 個排好序的序列s1 s2,sk 用2 路合併演算法將這k 個序列合併成乙個序列。假設所採用的2 路合併演算法合併2 個長度分別為m和n的序列需要m n 1次比較。試設計乙個演算法確定合併這個序列的最優合併順序,使所需的總比較次數最少。為了進行比較,還需要...
ACM 最少攔截系統 貪心思想
最少攔截系統 time limit 1000ms memory limit 32768k 某國為了防禦敵國的飛彈襲擊,發展出一種飛彈攔截系統。但是這種飛彈攔截系統有乙個缺陷 雖然它的第一發炮彈能夠到達任意的高度,但是以後每一發炮彈都不能超過前一發的高度。某天,雷達捕捉到敵國的飛彈來襲,因為該系統還在...
CF C Socks 並查集 貪心思想
題意 看了許多遍才看懂意思,理解力賊差 就是說,給你n只襪子,從1 n編號,給出每只襪子的顏色,接下來m行,每行給出乙個l和r,代表這天要穿的襪子編號。求為了保證每天穿的兩隻襪子顏色相同,至少對幾隻襪子染色。思路 首先我們可以對這m對關係用並查集進行維護,把需要顏色相同的襪子放到乙個集合裡面去,然後...