THHV 2025 - DX05 - 10 - Xe tăng

Xem dạng PDF

Gửi bài giải

Điểm: 14,00 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 1G
Input: stdin
Output: stdout

Dạng bài
Ngôn ngữ cho phép
C, C++, Java, Output Only, Pascal, PyPy, Python, Scratch, TEXT

Trong trường hợp đề bài hiển thị không chính xác, bạn có thể tải đề bài tại đây: Đề bài

Xe tăng là một phương tiện có cách di chuyển rất đặc biệt. Các bánh xe của nó trải dài trên nền đất để tăng diện tích tiếp xúc, từ đó giảm áp lực lên nền. Giả sử xe tăng đang muốn đi từ ~A~ đến ~B~, ta có thể chia đoạn đất này thành ~n~ đoạn nhỏ, đoạn thứ ~i~ có độ cứng ~a_i~. Một xe tăng chiều dài ~L~, khối lượng ~M~ có thể đi qua nếu tại mọi thời điểm, nó luôn đứng trên vùng đất có tổng độ cứng lớn hơn ~M~ (có nghĩa là mọi đoạn con liên tiếp độ dài ~L~ của dãy ~a~ đều phải có tổng lớn hơn hoặc bằng ~M~).

Yêu cầu: Cho biết khối lượng ~M~ của xe tăng, độ cứng của ~n~ đoạn nhỏ của vùng đất từ ~A~ đến ~B~, hãy tính chiều dài ~L~ nhỏ nhất có thể có của nó để xe tăng đi qua được vùng đất này.

Input

  • Dòng đầu chứa ~2~ số nguyên ~M~ và ~n~;

  • Dòng tiếp theo chứa ~n~ số nguyên dương ~a_1, a_2, \dots, a_n~, với ~a_i~ là độ cứng của đoạn thứ ~i~ ~(1 \le i \le n)~ trong vùng đất từ ~A~ đến ~B~. Dữ liệu đảm bảo tổng của mảng ~a~ lớn hơn hoặc bằng ~M~.

Output

  • Ghi một số nguyên duy nhất là chiều dài ngắn nhất có thể của xe tăng.

Scoring

Subtask Điểm Ràng buộc
1 ~50\%~ ~1 \le n \le 10^3, 1 \le a_i, M \le 10^9~
2 ~50\%~ ~10^3 < n \le 10^5, 1 \le a_i, M \le 10^9~

Sample Input 1

6 5
3 2 1 4 5

Sample Output 1

3

Bình luận

Hãy đọc nội quy trước khi bình luận.


Không có bình luận tại thời điểm này.