有 n 根繩子,第 i 根繩子長度為l
i\ l_i
li,現在需要m根等長的繩子,你可以對 n 根繩子進行任意裁剪(不能拼接),請你幫忙計算出這 m 根繩子最長的長度是多少。
輸入格式
第一行包含2個正整數n、m,表示原始繩子的數量和需求繩子的數量。
第二行包含n個整數,其中第 i 個整數l
i\ l_i
li表示第 i 根繩子的長度。
輸出格式
輸出乙個數字,表示裁剪後最長的長度,保留兩位小數。
資料範圍
1≤n ,m
\ n,m
n,m≤100000,
0i\ l_i
li<109
\ 10^9
109輸入樣例
3 4
3 5 4
輸出樣例
2.50
樣例解釋:
第一根和第三根分別裁剪出一根2.50長度的繩子,第二根剪成2根2.50長度的繩子,剛好4根。
我們可以將問題轉化為在一段區間內求滿足題意的繩子的最大值。,本題用到了浮點數的二分法。
**如下(示例):
#include
#include
using
namespace std;
int n,m;
int q[
100010];
bool
check
(double mid)
//判斷是否滿足題意,即所有情況的和》=要求的m個數
intmain()
printf
("%.2lf\n"
,r);
//輸出r或l都可
return0;
}
acwing寒假每日一題題解
貨倉選址 頭兩天的每日一題有點水 include using namespace std int s 505 505 int i,j intmain void 語法題蛇形添數 輸入兩個整數n和m,輸出乙個n行m列的矩陣,將數字 1 到 n m 按照回字蛇形填充至矩陣中。具體矩陣形式可參考樣例。輸入格...
acwing 寒假每日一題題解
本篇部落格是基於acwing活動中的寒假每日一題 活動位址 在一條數軸上有 n 家商店,它們的座標分別為 a1 an。現在需要在數軸上建立一家貨倉,每天清晨,從貨倉到每家商店都要運送一車商品。為了提高效率,求把貨倉建在何處,可以使得貨倉到每家商店的距離之和最小。輸入格式 第一行輸入整數n。第二行n個...
AcWing寒假每日一題 Day9獎學金
某小學最近得到了一筆贊助,打算拿出其中一部分為學習成績優秀的前5名學生發獎學金。期末,每個學生都有3門課的成績 語文 數學 英語。先按總分從高到低排序,如果兩個同學總分相同,再按語文成績從高到低排序,如果兩個同學總分和語文成績都相同,那麼規定學號小的同學排在前面,這樣,每個學生的排序是唯一確定的。任...