發布時間: 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