(緊急)遙遠的國度需水資源!!!

發布時間: July 10, 2022, 2:56 p.m.   最後更新時間: Sept. 14, 2023, 10:19 p.m.   時間限制: 50ms   記憶體限制: 128M

距今約$2^{16}-1$年前,在非洲內陸有著一個幸福的小王國,位處今撒哈拉沙漠中心。原本此地豐沛多雨、氣候宜人,無奈一顆小行星撞擊了地球,造成了氣候變遷,當地雨量大幅縮減,攸關國家未來之興衰。

國王為了解決水資源的問題,實施水共產制度嚴格管制水資源,每位國民必須在短暫的下雨期間,用家中任意鍋碗瓢盆來收集珍貴的雨水,並於每個禮拜的第一天上繳至市中心的水倉庫。在倉庫中,每次會使用有限個不同的罐子來收集上繳的水。

上繳雨水時,為了方便管理,須遵守以下規則:

  • 一個鍋碗瓢盆中的水,完全倒入某罐子後才能換下一個鍋碗瓢盆倒。
  • 若罐子的剩餘容量不足以倒入下一個鍋碗瓢盆內的水,則將此罐子密封放進倉庫,並換上下一個空罐子。
  • 一個鍋碗瓢盆只能倒入單一容器內,不能倒入不同罐子。
  • 每位國民排隊依序倒水,且每位國民只攜帶一個鍋碗瓢盆。

國王可以得知繳水日排隊的國民依序帶著多少的水,而考慮到倉庫的擺放效率,如果最大的罐子太小會沒有辦法裝完所有的水,太大則會造成空間浪費。國王想知道最大的罐子容量最大應至少為多少。請身為天選之人、一億人中才會有一個的天才,快用你無敵的程式能力替古老的國王想想辦法啊!

簡單來說,有$N$杯水依序倒進$M$個大小不同的罐子中,一次就要把整杯水倒入罐子且不能溢出,若有可能溢出就要換下一個罐子,請寫出一個程式計算出可能情況下,最大的罐子容積至少為$V$才能收集所有的雨水。

第一行輸入正整數$T$代表接下來有$T$筆輸入。$T \leq 10$
接下來每筆第一行輸入罐子的數量$M$排隊國民的總數量$N$。$N,M \leq 5000$
每筆第二行有$N$個正整數$W_1,W_2,W_3,...,W_i,...,W_N$中間以空格隔開,分別代表第i個人所要繳納水的體積。
$W_i \leq 10^5$

請輸出最大可能的罐子容積至少為多少才能收集所有雨水?
每筆輸出以換行隔開。

複製範例
3
3 5
1 2 3 4 5
5 10
10 5 9 2 8 1 8 6 9 10
5 3
1 1 1
6
17
1

請記得開long long

爆搜 絕對絕對 不會再讓你搜過囉

binary search

竹中軟研37th第二次競賽(社內賽)