#1325. SPLITSEQ - Chia dãy

Bộ nhớ: 256 MiB Thời gian: 500 ms Nhập/xuất từ luồng chuẩn
Kiểu bài: Thông thường Kiểu chấm: So sánh văn bản
Đưa lên bởi: Trùm CUỐI

Đề bài

Nguồn: Bài tập thầy Nguyễn Thanh Bình Ôn ĐT Hải Phòng T10/2020

Cho dãy số nguyên A=(a_1,a_2,…,a_n) và số nguyên M . Hãy chia dãy thành một số ít nhất các đoạn con liên tiếp sao cho tổng các phần tử trong mỗi đoạn con không vượt quá M .

Dữ liệu vào:

  • Dòng đầu chứa hai số nguyên dương n,M\ (n≤10^5;M≤10^9) ;
  • Dòng thứ hai chứa n số nguyên a_1,a_2,…,a_n\ (|a_i|≤10^9;∀ i=1÷n ) .

Dữ liệu đảm bảo luôn có kết quả.

Dữ liệu ra:

  • Một số nguyên duy nhất là số đoạn ít nhất tìm được.

Ví dụ:

Dữ liệu vào:
11 5
9 -1 2 -6 1 2 3 -4 3 9 -4
Dữ liệu ra:
3