trang chủ / đề bài / voi06_maxseq

Dãy con dài nhất

Đề bài

Mô tả

Cho dãy số nguyên a1,a2,…,an.

Dãy số ai,ai+1,…,aj với 1≤i≤j≤n được gọi là dãy con của dãy số đã cho và khi đó, j−i+1 được gọi là độ dài, còn ai+ai+1+⋯+aj được gọi là trọng lượng của dãy con này.

Yêu cầu: Cho số nguyên p, trong số các dãy con của dãy số đã cho có trọng lượng không nhỏ hơn p hãy tìm dãy con có độ dài lớn nhất.

Dữ liệu vào

  • Dòng đầu tiên ghi hai số nguyên n và p cách nhau bởi dấu cách.
  • Dòng thứ i trong số n dòng tiếp theo chứa số nguyên ai là số hạng thứ i của dãy số đã cho, i=1,2,…,n.

Dữ liệu ra

Ghi ra số nguyên k là độ dài của dãy con tìm được (qui ước: nếu không có dãy con nào thỏa mãn điều kiện đặt ra thì k=−1).

Ràng buộc

  • 1≤n≤50000.
  • |ai|≤20000.
  • |p|≤109.

Subtasks

  • Subtask 1 (50% số test): n≤2000.
  • Subtask 2 (50% số test): không có ràng buộc gì thêm.

Mỗi subtask gồm nhiều test, mỗi test được chấm điểm riêng.

Ví dụ

Input Output Giải thích
5 6
-2
3
2
-2
3
4 Dãy con 3,2,−2,3 có trọng lượng 6≥6 và độ dài 4; cả dãy có trọng lượng 4<6.
4 9
2
3
2
-2
-1 Trọng lượng lớn nhất là 2+3+2=7<9.

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.47 awk 1.3.4 gcc 16.2.0 dotnet 10.0.402 g++ 16.2.0 g++-themis 16.2.0 g++17 16.2.0 g++20 16.2.0 g++23 16.2.0 clang++ 22.1.8 dmd 2.113.0 dart 3.13.6 gforth 0.7.3 gfortran 15.3.0 go 1.27.3 groovyc 5.1.3 javac 26.0.2.1 node 26.12.1 julia 1.13.2 kotlinc 2.4.21 lean 4.35.0 sbcl 2.2.9 lua 5.5.1 nim 2.2.12 fpc 3.2.2 fpc-themis 3.2.2 perl 5.42.3 php 8.5.12 pike 8.0 swipl 9.0.4 pypy3 7.3.23 python3 3.15.1 racket 8.7 ruby 4.0.8 rustc 1.99.1 csc 5.3.0 ctoj-scratch 0.0.1 sed 4.9 swiftc 6.4.1 tclsh 8.6 bun 1.4.4 deno 2.9.8 v 0.5.2 zig 0.17.0