Cây cầu chở ước mơ (HSG11-2023, Hà Tĩnh)

Xem PDF



Tác giả:
Dạng bài
Ngôn ngữ cho phép
Assembly, Awk, C, C#, C++, Clang, Cobol, D, Groovy, Haskell, JS, Java, Kotlin, Lua, Node JS, OCaml, ObjectiveC, Output, PHP, Pascal, Perl, Prolog, Pypy, Pypy 3, Python, Ruby, Rust, Scala, Scratch, Swift
Điểm: 1100 (p) Thời gian: 2.0s Bộ nhớ: 256M Input: BRIDGE.INP Output: BRIDGE.OUT

Bản Rào Tre ngăn cách với thị trấn bởi một con suối. Nhân tháng thanh niên đoàn trường THPT Hương Khê muốn làm một cây cầu gỗ kết nối giữa thị trấn với bản cho các bạn đến trường đỡ vất vả. Để làm được cây cầu cần \(k\) m gỗ. Tại khu rừng gần đó có \(n\) cây gỗ được trồng thành một hàng dọc, các cây được đánh số là \(1, 2, ..., n\) và mỗi cây có chiều dài sử dụng làm được cầu lần lượt là \(a_1, a_2, ..., a_n\). Để tránh lãng phí và dễ khai thác thì đoàn trường muốn khai thác các cây gỗ nằm cạnh nhau và có tổng chiều dài đúng bằng \(k\).

Yêu cầu: Đếm xem có bao nhiêu cách chọn các cây gỗ liên tiếp nhau có tổng chiều dài bằng \(k\).

Input

  • Dòng đầu là hai số nguyên \(n, k\) \((0 < n \leq 10^6, k \leq 10^{14})\)
  • Dòng thứ 2 gồm \(n\) số nguyên \(a_1, a_2, ..., a_n\) \((0 < a_i \leq 10^9, \forall i = 1,2,...,n)\) là chiều dài của các cây gỗ
  • Các số trên cùng một dòng cách nhau bởi dấu cách

Output

  • Ghi ra một số nguyên duy nhất là số cách chọn theo yêu cầu trên

Scoring

  • Có 60% số test ứng với 60% số điểm thỏa mãn: \(n \leq 10^2\)
  • 20% số test ứng với 20% số điểm thỏa mãn: \(n \leq 10^3\)
  • 20% số test còn lại ứng với 20% số điểm không có ràng buộc gì thêm

Example

Test 1

Input
5 8
1 1 3 5 8
Output
2
Note

Có 2 cách chọn các cây liên tiếp có chiều dài bằng 8 đó là: 3, 5 và 8

Bình luận (7)

Mới nhất
Tải bình luận...