trang chủ / bài tập / queuebus

Hàng đợi tại trạm xe buýt

Đề bài

Mô tả

Tại trạm xe buýt có n nhóm người đứng xếp hàng. Nhóm thứ i (tính từ đầu hàng) có ai người. Cứ mỗi 30 phút, một chiếc xe buýt rỗng đến trạm và có thể chở tối đa m người.

Hành khách lên xe theo thứ tự nhóm: nhóm đầu hàng lên trước, rồi đến nhóm thứ hai, và cứ thế. Thứ tự các nhóm trong hàng không bao giờ thay đổi. Một quy tắc quan trọng: nếu chiếc xe hiện tại không thể chở toàn bộ thành viên của một nhóm, thì cả nhóm đó sẽ chờ chuyến xe tiếp theo, và tất cả các nhóm xếp sau cũng phải chờ cùng.

Hãy xác định cần bao nhiêu chuyến xe buýt để chở hết tất cả n nhóm.

Dữ liệu vào

  • Dòng đầu chứa hai số nguyên nm.
  • Dòng thứ hai chứa n số nguyên a1,a2,,an.

Dữ liệu ra

In ra một số nguyên duy nhất — số chuyến xe buýt cần thiết.

Ràng buộc

  • 1n,m100
  • 1aim

Ví dụ

Input Output Giải thích
3 4
1 2 1
1 Tổng số người là 1+2+1=4, vừa đúng sức chứa của một chuyến xe.
4 3
2 3 2 1
3 Chuyến 1 chở nhóm đầu (2 người), nhóm hai (3 người) không vừa nên đi chuyến 2. Chuyến 3 chở nhóm ba (2) và nhóm bốn (1).

Bình luận

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

gnatmake 12.2.0 a68g 3.1.2 nasm 2.16.1 as_x64 2.46 awk 1.3.4 gcc 16.1.0 csc 6.12.0.200 g++ 16.1.0 g++-themis 16.1.0 g++17 16.1.0 g++20 16.1.0 g++23 16.1.0 clang++ 22.1.6 dmd 2.112.0 dart 3.12.1 gforth 0.7.3 gfortran 12.2.0 go 1.26.3 groovyc 5.0.6 javac 25.0.3 node 26.2.0 kotlinc 2.3.21 sbcl 2.2.9 lua 5.4.8 nim 2.2.10 fpc 3.2.2 fpc-themis 3.2.2 perl 5.36.0 php 8.5.6 pike 8.0 pypy3 7.3.23 python3 3.14.5 racket 8.7 ruby 4.0.5 rustc 1.96.0 csc 5.3.0 ctoj-scratch 0.0.1 sed 4.9 tclsh 8.6 bun 1.3.14 deno 2.8.1 v 0.5.1 zig 0.16.0