1. 程式人生 > >二分答案 ①

二分答案 ①

總比 兩個 但是 我們 朋友 整數 所有 小數 就會

05:派

總時間限制: 1000ms

內存限制: 65536kB

描述 我的生日要到了!根據習俗,我需要將一些派分給大家。我有N個不同口味、不同大小的派。有F個朋友會來參加我的派對,每個人會拿到一塊派(必須一個派的一塊,不能由幾個派的小塊拼成;可以是一整個派)。

我的朋友們都特別小氣,如果有人拿到更大的一塊,就會開始抱怨。因此所有人拿到的派是同樣大小的(但不需要是同樣形狀的),雖然這樣有些派會被浪費,但總比搞砸整個派對好。當然,我也要給自己留一塊,而這一塊也要和其他人的同樣大小。

請問我們每個人拿到的派最大是多少?每個派都是一個高為1,半徑不等的圓柱體。 輸入 第一行包含兩個正整數N和F,1 ≤ N, F ≤ 10 000,表示派的數量和朋友的數量。 第二行包含N個1到10000之間的整數,表示每個派的半徑。

輸出

輸出每個人能得到的最大的派的體積,精確到小數點後三位。

樣例輸入 3 3 4 3 3 樣例輸出 25.133

【思路】劉汝佳藍本上的題目 一開始我是沒想到用二分答案,雖然這些題都是二分答案類型的。

每個人分最多分所有派裏面積最大的,要麽無限小(這是答案範圍);卡答案的條件就是能不能分得到,顯然是用二分答案的 所以 二分答案的題目 比較直接的問法 最小值最大 一看就是二分答案了,但是比較隱形的問法 首先要看看有這麽幾個特點1 能確定答案範圍 2有卡答案的條件 orz 【代碼】

二分答案 ①