nowob今天中了樂透,突然有錢的他在超盤的地下街買了 $N$ 盒寶可夢卡牌。第 $i$ 盒寶可夢卡牌裡面有 $P_i$ 包卡包。
nowob打算回家開心地開卡包,他總共有 $H$ 小時的空閒時間,他希望能在 $H$ 小時內把所有卡包開完。
nowob可以決定一個開卡包的速度 $S$(代表每小時最多開 $S$ 包卡包)。
開卡包的規則如下:
1. 每小時他只能選擇一盒卡包來開,最多開 $S$ 包。
2. 如果這盒卡包剩下的數量少於 $S$ 包,他會把這盒開完,但這小時剩下的時間不能去開別盒卡包只能休息。
3. 也就是說,開完第 $i$ 盒卡包需要花費 $\lceil P_i / S \rceil$ 小時(無條件進位)。
因為開太快會折到卡片不好看,nowob希望他的開卡包速度 $S$ 能夠越慢越好。
請幫nowob計算出,若要在 $H$ 小時以內開完所有卡包,他最小的開卡包速度 $S$ 是多少?
第一行包含一個正整數 $T$ ($1 \le T \le 10$),代表測試資料筆數。
每筆測資第一行包含兩個整數 $N, H$ ($1 \le N \le 10^5, N \le H \le 10^{14}$),代表卡牌盒數與擁有的總小時數。(保證 $H \ge N$)。
第二行包含 $N$ 個整數 $P_i$ ($1 \le P_i \le 10^9$),代表每盒裡面卡包的數量。
對每筆測資,輸出一行一個整數,代表最小的開卡包速度 $S$。
2 4 8 3 6 7 11 5 5 30 11 23 4 20
4 30
$\mathbf{30}$%: $\sum N \le 2000, P_i \le 1000$。
$\mathbf{70}$%: 無特別限制。
範例說明:
第一筆測資:時間限制為 8 小時。若速度 $S = 4$,開完四盒分別需要 $\lceil 3/4 \rceil=1$, $\lceil 6/4 \rceil=2$, $\lceil 7/4 \rceil=2$, $\lceil 11/4 \rceil=3$ 小時。總共花費 $1+2+2+3=8$ 小時,剛好能在規定時間內開完。
第二筆測資:時間限制為 5 小時。因為有 5 盒卡牌,每盒至少需要 1 小時來開,這代表每一盒都必須在 1 小時內開完。所以速度必須能夠一次開完數量最多的一盒,即合法速度為 30。
| 編號 | 身分 | 題目 | 主題 | 人氣 | 發表日期 |
沒有發現任何「解題報告」 |
|||||