Caucavancan Div.01 - Problem A - A Fish Catching Trip

Xem PDF



Tác giả:
Dạng bài
Ngôn ngữ cho phép
C++
Điểm: 1000 Thời gian: 1.0s Bộ nhớ: 256M Input: prba.inp Output: prba.out

Sau trận chiến tại Hắc Hải, trongphithienp2o2HuaGiaBao không còn đánh nhau bằng oán khí nữa mà chuyển sang đấu trí bằng "Ván cờ linh ngư". Họ bày ra một hàng \(n\) con cá được sắp xếp theo độ linh lực khác nhau trên một dải đá.
trongphithien nắm giữ quyền điều khiển một dải đá từ trái, còn p2o2HuaGiaBao điều khiển từ phải. Họ cần chọn ra một mảng con của dải đá sao cho tổng linh lực của đoạn đó đúng bằng một giá trị mục tiêu \(K\) để kích hoạt cấm thuật. Nếu vượt quá \(K\), trận pháp sẽ bị phản phệ. trongphithienp2o2HuaGiaBao đang tranh giành xem ai sẽ là người tìm ra độ dài dài nhất của đoạn con đó để kết thúc ván cờ.
Yêu cầu: Cho dãy số nguyên dương \(A\)\(n\) phần tử (\(A_i > 0\)). Hãy tìm độ dài lớn nhất của một mảng con có tổng bằng \(K\). Nếu không có đoạn nào thỏa mãn, in ra -1.

Input

  • Dòng đầu tiên gồm \(2\) số nguyên dương \(n\)\(K\) (\(1 \le n \le 10^6, 1 \le K \le 10^9\)).
  • Dòng hai gồm \(n\) số nguyên dương \(A_1, A_2, \dots, A_n\) (\(1\le A_i \le 10^9\)).

Output

  • Gồm \(1\) dòng duy nhất là độ dài lớn nhất của đoạn con có tổng bằng \(K\), hoặc -1 nếu không tồn tại.

Example

Test 1

Input
5 7
2 3 1 2 4
Output
3
Note
  • Đoạn \([\)\(3; 1; 2\)\(]\) tổng bằng \(6\ne 7\)
  • Đoạn \([\)\(3; 4\)\(]\) tổng bằng \(7=7\), độ dài là \(2\)
  • Đoạn \([\)\(2; 1; 4\)\(]\) tổng là \(7=7\), độ dài là \(3\).
    \(\rightarrow\) Vậy, độ dài dài nhất của đoạn thỏa mãn đề bài là \(3\).

Test 2

Input
10 500000
2753 3593 1592 2920 4931 48011 20000 5000 30000 10000
Output
-1

Bình luận

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

Không có bình luận nào.