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

Hệ thống camera xe buýt

Đề bài

Mô tả

Một chiếc xe buýt được trang bị hệ thống camera ghi lại sự thay đổi số hành khách sau mỗi trạm dừng.

Nếu x là số hành khách trên xe ngay trước một trạm dừng và y là số hành khách ngay sau trạm dừng đó, hệ thống ghi lại giá trị yx.

Chuyến chạy thử được thực hiện với n trạm dừng, hệ thống ghi lại dãy số nguyên a1,a2,,an, trong đó ai là giá trị ghi được tại trạm thứ i (các trạm được đánh số từ 1 đến n theo thứ tự thời gian).

Xe buýt có sức chứa w, nghĩa là tại mọi thời điểm số hành khách trên xe phải nằm trong đoạn từ 0 đến w (kể cả thời điểm trước trạm dừng đầu tiên).

Hãy đếm số cách chọn số hành khách có trên xe trước trạm dừng đầu tiên sao cho không có mâu thuẫn nào xảy ra. Nếu không có cách nào, in ra 0.

Dữ liệu vào

  • Dòng đầu chứa hai số nguyên nw: số trạm dừng và sức chứa của xe.
  • 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ố cách chọn số hành khách ban đầu.

Ràng buộc

  • 1n1000
  • 1w109
  • 106ai106

Ví dụ

Input Output Giải thích
3 5
2 1 -3
3 Ban đầu trên xe có thể có 0, 1 hoặc 2 hành khách. Với 2 hành khách, số hành khách lần lượt là 2452, luôn nằm trong đoạn [0,5].
2 4
-1 1
4 Ban đầu có thể có 1, 2, 3 hoặc 4 hành khách. Không thể có 0 vì sau trạm đầu tiên số hành khách sẽ là 1.
4 10
2 4 1 2
2 Ban đầu có thể có 0 hoặc 1 hành khách. Tổng cộng xe nhận thêm 9 khách nên số ban đầu không vượt quá 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