Kho báu dưới lòng đất

Xem dưới dạng PDF

Gửi bài giải


Điểm: 2
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 256M
đầu vào: stdin
Đầu ra: stdout

Kiểu bài tập

An đang đào hầm tìm kho báu. Trên đường đi, An có một dãy \(n\) hầm chứa vàng, mỗi hầm \(a_i\) lượng vàng. An muốn tìm một đoạn hầm liên tiếp có tổng lượng vàng bằng đúng \(K\).

Nếu có, in ra độ dài ngắn nhất của đoạn đó. Nếu không, in ra \(-1\).

Gợi ý: Dùng prefix sum kết hợp HashMap (đếm số lần xuất hiện của prefix sum).

Input

Dòng đầu chứa \(n\) và \(K\) (\(1 \le n \le 2 \cdot 10^5\), \(-10^9 \le K \le 10^9\)). Dòng hai chứa \(n\) số \(a_i\) (\(-10^9 \le a_i \le 10^9\)).

Output

In ra độ dài ngắn nhất của đoạn con có tổng bằng \(K\), hoặc \(-1\).

Example

6 5
1 2 3 -2 5 1

Output:

2

Giải thích: Đoạn \([2,3]\) có tổng \(2+3=5\), độ dài \(2\).


Nhận xét

Không có ý kiến tại thời điểm này.