Giá sách

Xem PDF

Điểm: 1600 (p) Thời gian: 1.0s Bộ nhớ: 1023M Input: bàn phím Output: màn hình

Vicky có \(n\) cuốn sách và anh ta muốn đóng một tập các kệ sách để chứa tất cả các cuốn sách này. Mỗi cuốn sách có chiều rộng \(W_i\) và chiều cao \(H_i\). Các cuốn sách cần được bỏ vào các kệ sách theo thứ tự. Ví dụ như kệ sách thứ nhất cần bỏ các cuốn sách từ 1 đến \(k\), kệ sách thứ 2 sẽ bắt đầu từ cuốn sách thứ \(k+1\), và cứ thế tiếp tục. Mỗi kệ sách có chiều rộng tối đa là \(L\). Chiều cao của kệ sách bằng với chiều cao của cuốn sách có chiều cao lớn nhất, và chiều cao của tập các kệ sách bằng với tổng chiều cao của các kệ sách khi xếp dọc lên. Hãy giúp Vicky tính chiều cao thấp nhất có thể của tập các kệ sách khi xếp chồng lên nhau.

Input

  • Dòng 1 gồm 2 số nguyên dương \(n\)\(L\) (\(1 \leq L \leq 10^9\)).
  • Dòng thứ i trong số \(n\) dòng tiếp theo chứa 2 số nguyên dương \(H_i\)\(W_i\). (\(1 \leq H_i \leq 10^9; 1 \leq W_i \leq L\)).

Output

  • Ghi ra một số nguyên dương duy nhất là chiều cao nhỏ nhất của tập các kệ sách.

Scoring

  • Subtask \(1\) (\(40\%\) số điểm): \(n\leq 100\).
  • Subtask \(2\) (\(60\%\) số điểm): \(n\leq 2000\) .

Example

Test 1

Sample input
5  10 
5  7 
9  2 
8  5 
13  2 
3   8
Sample output
21

Bình luận

Không có bình luận nào.